/*
 * Copyright (C) Hisilicon Technologies Co., Ltd. 2012-2019. All rights reserved.
 * Description: Function of imx415_cmos_ex.h
 * Author: ISP SW
 * Create: 2012/06/28
 */

#ifndef __IMX415_CMOS_EX_H_
#define __IMX415_CMOS_EX_H_

#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif

/* Piris attr */
static ISP_PIRIS_ATTR_S g_gstPirisAttr = {
    0,   // bStepFNOTableChange
    1,   // bZeroIsMax
    94,  // u16TotalStep
    62,  // u16StepCount
    /* Step-F number mapping table. Must be from small to large. F1.0 is 1024 and F32.0 is 1 */
    { 30,  35,  40,  45,  50,  56,  61,  67,  73,  79,  85,  92,  98,  105, 112, 120, 127, 135, 143, 150, 158,
      166, 174, 183, 191, 200, 208, 217, 225, 234, 243, 252, 261, 270, 279, 289, 298, 307, 316, 325, 335, 344,
      353, 362, 372, 381, 390, 399, 408, 417, 426, 435, 444, 453, 462, 470, 478, 486, 493, 500, 506, 512 },
    ISP_IRIS_F_NO_1_4,  // enMaxIrisFNOTarget
    ISP_IRIS_F_NO_5_6   // enMinIrisFNOTarget
};

static const ISP_CMOS_DPC_S g_stCmosDpc = {
    { 0, 0, 0, 152, 220, 220, 220, 220, 220, 220, 152, 152, 152, 152, 152, 152 }, /* au16Strength[16] */
    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50 },                     /* au16BlendRatio[16] */
};

#ifdef CONFIG_HI_ISP_CR_SUPPORT
static const ISP_CMOS_GE_S g_stIspGe = {
    /* For GE */
    1,                                                                                  /* bEnable */
    9,                                                                                  /* u8Slope */
    9,                                                                                  /* u8SensiSlope */
    300,                                                                                /* u16SensiThr */
    { 300, 300, 300, 300, 310, 310, 310, 310, 320, 320, 320, 320, 330, 330, 330, 330 },
    { 128, 128, 128, 128, 129, 129, 129, 129, 130, 130, 130, 130, 131, 131, 131, 131 },
    { 1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048 }
};
#endif

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaic = {
    1,  // bEnable
    /* au8NonDirStr */
    { 64, 64, 64, 80, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
    /* au8NonDirLFDetailEhc */
    { 42, 36, 32, 28, 16, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
    /* au8NonDirHFDetailEhc */
    { 0, 0, 2, 3, 4, 5, 5, 5, 5, 5, 5, 7, 7, 7, 7, 7 },
    /* au8DetailSmoothRange */
    { 1, 1, 1, 1, 1, 1, 3, 4, 5, 5, 7, 7, 7, 7, 7, 7 },
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspAntiFalseColor = {
    1,                                                    /* bEnable */
    { 10, 10, 8, 8, 7, 7, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 }, /* au8AntiFalseColorThreshold */
    { 8, 8, 8, 8, 7, 7, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 },   /* au8AntiFalseColorStrength */
};

/* BAYER NR */
static ISP_CMOS_NOISE_CALIBRATION_S g_stIspNoiseCalibration = {
    8,  // Calibration Lut Num
    /* ************Calibration LUT Table************ */
    {{ 100.000000f, 0.049954f, 0.037828f },
     { 200.000000f, 0.098111f, 0.030707f },
     { 400.000000f, 0.181584f, 0.065621f },
     { 800.000000f, 0.325323f, 0.254976f },
     { 1600.000000f, 0.650243f, 0.723975f },
     { 3200.000000f, 1.268702f, 2.947644f },
     { 6400.000000f, 2.458397f, 10.087735f },
     { 12800.000000f, 4.767390f, 34.887684f }},
    /*********************************************/
};
static const ISP_CMOS_BAYERNR_S g_stIspBayerNr = {
    1,                                                                   // bEnable
    0,                                                                   // bBnrMonoSensorEn
    0,                                                                   // bNrLscEnable
    96,                                                                  // u8BnrLscMaxGain
    256,                                                                 // u16BnrLscCmpStrength
    { 65, 65, 65, 65, 65, 65, 60, 60, 60, 50, 50, 50, 50, 50, 16, 16 },  // FineStr
    {
        { 0, 0, 0, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3 },  // ChromaStrR
        { 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2 },  // ChromaStrGr
        { 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2 },  // ChromaStrGb
        { 0, 0, 0, 1, 2, 2, 2, 2, 1, 3, 3, 3, 3, 3, 3, 3 }   // ChromaStrB
    },
    { 0, 0, 0, 0 },  // WDRFrameStr
    { 0, 0, 0, 0 },  // FusionFrameStr
    {
        { 70, 90, 110, 120, 140, 140, 150, 200, 340, 380, 340, 340, 300, 300, 280, 280 },  // CoarseStrR
        { 60, 80,  90, 100, 120, 120, 130, 180, 180, 180, 160, 160, 148, 148, 138, 138 },  // CoarseStrGR
        { 60, 80,  90, 100, 120, 120, 130, 180, 180, 180, 160, 160, 148, 148, 138, 138 },  // CoarseStrGB
        { 70, 90, 110, 120, 140, 140, 150, 200, 340, 380, 340, 340, 300, 300, 280, 280 }   // CoarseStrB
    },
    { 45, 40, 40, 40, 40, 40, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 },  // lutCoringWeight
    {
        160, 160, 140, 120, 90, 65, 65, 65, 70, 70, 70, 70, 70, 70, 70, 70,
        80, 80, 80, 85, 85, 85, 90, 90, 90, 95, 100, 120, 120, 150, 150, 180, 180
    },  // CoringRatio
};

static const ISP_CMOS_DETAIL_S g_stIspDetail = {
    { 1,  // bEnable
    { 256, 256, 200, 170, 150, 100, 60, 60, 60, 80, 80, 80, 80, 50, 50, 100, 100 },
    0,        // enOpType
    {
        { 100, 140, 160, 160, 180, 180, 160, 140, 120, 100, 100, 100, 100, 100, 100, 100 },  // au16GlobalGain;
        { 6, 9, 10, 12, 12, 16, 20, 13, 10, 8, 8, 8, 8, 8, 8, 8 },                           // au16GainLF;
        { 4, 6, 8, 9, 9, 12, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 },                       // au16GainHF;
    },
    {
        150,  // u16GlobalGain;
        9,    // u16GainLF;
        9     // u16GainHF;
    }
    }
};

static const ISP_CMOS_LDCI_S g_stIspLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    36,

    /* au8HePosWgt */
    { 70, 45, 42, 40, 35, 32, 32, 8, 6, 0, 0, 0, 0, 0, 0, 0 },
    /* au8HePosSigma */
    { 80, 80, 70, 70, 70, 64, 64, 20, 12, 8, 6, 2, 1, 1, 1, 1 },
    /* au8HePosMean */
    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

    /* au8HeNegWgt */
    { 60, 45, 45, 45, 45, 24, 24, 8, 6, 0, 0, 0, 0, 0, 0, 0 },
    /* au8HeNegSigma */
    { 80, 80, 80, 80, 80, 72, 72, 54, 36, 8, 6, 2, 1, 1, 1, 1 },
    /* au8HeNegMean */
    { 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

    /* au16BlcCtrl */
    { 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }
};

static const ISP_CMOS_GAMMA_S g_stIspGamma = {
    { 0,    47,   62,   78,   93,   108,  123,  139,  154,  169,  185,  200,  216,  231,  247,  262,  277,  293,  308,
      324,  339,  355,  370,  386,  401,  417,  432,  448,  463,  479,  494,  509,  525,  540,  556,  571,  586,  602,
      617,  632,  648,  663,  678,  693,  708,  724,  739,  754,  769,  784,  799,  814,  829,  843,  858,  873,  888,
      902,  917,  931,  946,  960,  975,  989,  1003, 1018, 1032, 1046, 1060, 1074, 1088, 1101, 1115, 1129, 1143, 1156,
      1170, 1183, 1196, 1210, 1223, 1236, 1249, 1262, 1275, 1287, 1300, 1313, 1325, 1338, 1350, 1362, 1375, 1387, 1399,
      1411, 1423, 1435, 1446, 1458, 1469, 1481, 1492, 1504, 1515, 1526, 1537, 1548, 1559, 1570, 1581, 1591, 1602, 1613,
      1623, 1633, 1644, 1654, 1664, 1674, 1684, 1694, 1704, 1714, 1723, 1733, 1742, 1752, 1761, 1771, 1780, 1790, 1799,
      1809, 1818, 1827, 1837, 1846, 1855, 1864, 1873, 1881, 1890, 1899, 1907, 1916, 1924, 1932, 1941, 1949, 1957, 1965,
      1973, 1981, 1989, 1997, 2005, 2013, 2020, 2028, 2036, 2043, 2051, 2058, 2065, 2073, 2080, 2087, 2094, 2102, 2109,
      2116, 2123, 2130, 2137, 2144, 2151, 2157, 2164, 2171, 2178, 2185, 2191, 2198, 2205, 2211, 2218, 2224, 2231, 2237,
      2244, 2251, 2257, 2263, 2270, 2276, 2283, 2289, 2295, 2301, 2307, 2313, 2319, 2325, 2331, 2337, 2343, 2349, 2354,
      2360, 2366, 2371, 2377, 2382, 2388, 2393, 2399, 2404, 2409, 2414, 2420, 2425, 2430, 2435, 2440, 2445, 2451, 2456,
      2461, 2465, 2470, 2475, 2480, 2485, 2490, 2495, 2499, 2504, 2509, 2514, 2518, 2523, 2528, 2532, 2537, 2541, 2546,
      2551, 2555, 2560, 2564, 2569, 2573, 2578, 2582, 2587, 2591, 2595, 2600, 2604, 2608, 2613, 2617, 2621, 2625, 2630,
      2634, 2638, 2642, 2646, 2650, 2654, 2658, 2662, 2666, 2669, 2673, 2677, 2681, 2685, 2688, 2692, 2696, 2700, 2703,
      2707, 2710, 2714, 2718, 2721, 2725, 2728, 2732, 2735, 2739, 2742, 2746, 2749, 2752, 2756, 2759, 2763, 2766, 2769,
      2773, 2776, 2779, 2783, 2786, 2789, 2792, 2796, 2799, 2802, 2806, 2809, 2812, 2815, 2819, 2822, 2825, 2828, 2831,
      2835, 2838, 2841, 2844, 2847, 2850, 2853, 2856, 2859, 2862, 2865, 2868, 2871, 2874, 2877, 2880, 2883, 2886, 2889,
      2892, 2895, 2898, 2900, 2903, 2906, 2909, 2912, 2914, 2917, 2920, 2923, 2925, 2928, 2931, 2934, 2936, 2939, 2942,
      2944, 2947, 2950, 2952, 2955, 2958, 2960, 2963, 2966, 2968, 2971, 2974, 2976, 2979, 2981, 2984, 2987, 2989, 2992,
      2995, 2997, 3000, 3002, 3005, 3008, 3010, 3013, 3015, 3018, 3021, 3023, 3026, 3028, 3031, 3033, 3036, 3038, 3041,
      3043, 3046, 3048, 3051, 3053, 3056, 3058, 3061, 3063, 3066, 3068, 3071, 3073, 3075, 3078, 3080, 3083, 3085, 3088,
      3090, 3092, 3095, 3097, 3099, 3102, 3104, 3107, 3109, 3111, 3114, 3116, 3118, 3120, 3123, 3125, 3127, 3130, 3132,
      3134, 3137, 3139, 3141, 3143, 3146, 3148, 3150, 3152, 3155, 3157, 3159, 3161, 3163, 3166, 3168, 3170, 3172, 3174,
      3177, 3179, 3181, 3183, 3185, 3187, 3189, 3191, 3194, 3196, 3198, 3200, 3202, 3204, 3206, 3208, 3210, 3212, 3214,
      3216, 3218, 3220, 3223, 3225, 3227, 3229, 3231, 3233, 3235, 3237, 3239, 3241, 3243, 3245, 3247, 3248, 3250, 3252,
      3254, 3256, 3258, 3260, 3262, 3264, 3266, 3268, 3270, 3272, 3274, 3276, 3278, 3279, 3281, 3283, 3285, 3287, 3289,
      3291, 3293, 3295, 3297, 3298, 3300, 3302, 3304, 3306, 3308, 3310, 3311, 3313, 3315, 3317, 3319, 3320, 3322, 3324,
      3326, 3328, 3329, 3331, 3333, 3335, 3336, 3338, 3340, 3342, 3344, 3345, 3347, 3349, 3350, 3352, 3354, 3356, 3357,
      3359, 3361, 3363, 3364, 3366, 3368, 3369, 3371, 3373, 3375, 3376, 3378, 3380, 3381, 3383, 3385, 3387, 3388, 3390,
      3392, 3393, 3395, 3397, 3399, 3400, 3402, 3404, 3405, 3407, 3409, 3411, 3412, 3414, 3416, 3417, 3419, 3421, 3422,
      3424, 3426, 3427, 3429, 3431, 3432, 3434, 3436, 3437, 3439, 3441, 3442, 3444, 3446, 3447, 3449, 3451, 3452, 3454,
      3455, 3457, 3459, 3460, 3462, 3464, 3465, 3467, 3469, 3470, 3472, 3473, 3475, 3477, 3478, 3480, 3482, 3483, 3485,
      3487, 3488, 3490, 3492, 3493, 3495, 3496, 3498, 3500, 3501, 3503, 3505, 3506, 3508, 3510, 3511, 3513, 3515, 3516,
      3518, 3520, 3521, 3523, 3525, 3526, 3528, 3530, 3531, 3533, 3535, 3536, 3538, 3540, 3542, 3543, 3545, 3547, 3548,
      3550, 3552, 3553, 3555, 3557, 3558, 3560, 3562, 3563, 3565, 3567, 3568, 3570, 3572, 3573, 3575, 3577, 3578, 3580,
      3582, 3583, 3585, 3587, 3588, 3590, 3592, 3593, 3595, 3596, 3598, 3600, 3601, 3603, 3605, 3606, 3608, 3609, 3611,
      3612, 3614, 3616, 3617, 3619, 3620, 3622, 3623, 3625, 3626, 3628, 3629, 3631, 3632, 3634, 3635, 3637, 3638, 3640,
      3641, 3643, 3644, 3646, 3647, 3649, 3650, 3652, 3653, 3655, 3656, 3658, 3659, 3660, 3662, 3663, 3665, 3666, 3668,
      3669, 3671, 3672, 3673, 3675, 3676, 3678, 3679, 3681, 3682, 3684, 3685, 3686, 3688, 3689, 3691, 3692, 3694, 3695,
      3696, 3698, 3699, 3701, 3702, 3704, 3705, 3707, 3708, 3709, 3711, 3712, 3714, 3715, 3717, 3718, 3719, 3721, 3722,
      3724, 3725, 3726, 3728, 3729, 3731, 3732, 3733, 3735, 3736, 3738, 3739, 3740, 3742, 3743, 3745, 3746, 3747, 3749,
      3750, 3752, 3753, 3754, 3756, 3757, 3759, 3760, 3761, 3763, 3764, 3766, 3767, 3768, 3770, 3771, 3773, 3774, 3776,
      3777, 3778, 3780, 3781, 3783, 3784, 3786, 3787, 3789, 3790, 3792, 3793, 3795, 3796, 3797, 3799, 3801, 3802, 3804,
      3805, 3807, 3808, 3810, 3811, 3813, 3814, 3816, 3818, 3819, 3821, 3822, 3824, 3825, 3827, 3829, 3830, 3832, 3833,
      3835, 3837, 3838, 3840, 3842, 3843, 3845, 3846, 3848, 3850, 3851, 3853, 3855, 3856, 3858, 3859, 3861, 3863, 3864,
      3866, 3868, 3869, 3871, 3872, 3874, 3876, 3877, 3879, 3880, 3882, 3884, 3885, 3887, 3888, 3890, 3892, 3893, 3895,
      3896, 3898, 3899, 3901, 3903, 3904, 3906, 3907, 3909, 3910, 3912, 3913, 3915, 3916, 3918, 3919, 3921, 3922, 3924,
      3925, 3927, 3928, 3930, 3931, 3933, 3934, 3936, 3937, 3939, 3940, 3942, 3943, 3945, 3946, 3948, 3949, 3951, 3952,
      3954, 3955, 3957, 3958, 3960, 3961, 3963, 3964, 3966, 3967, 3969, 3970, 3972, 3973, 3974, 3976, 3977, 3979, 3980,
      3982, 3983, 3985, 3986, 3988, 3989, 3991, 3992, 3994, 3995, 3997, 3999, 4000, 4002, 4003, 4005, 4006, 4008, 4009,
      4011, 4012, 4014, 4015, 4017, 4018, 4020, 4021, 4023, 4024, 4026, 4027, 4029, 4031, 4032, 4034, 4035, 4037, 4038,
      4040, 4041, 4043, 4044, 4046, 4047, 4049, 4050, 4052, 4054, 4055, 4057, 4058, 4060, 4061, 4063, 4064, 4066, 4067,
      4069, 4070, 4072, 4074, 4075, 4077, 4078, 4080, 4081, 4083, 4084, 4086, 4087, 4089, 4090, 4092, 4093, 4095 }
};

#ifdef CONFIG_HI_ISP_EDGEMARK_SUPPORT
static const ISP_CMOS_EDGEMARK_S g_stIspEdgeMark = {
    0,         // HI_BOOL bEnable;
    100,       // HI_U8     u8Threshold;
    0xFF0000,  // HI_U32    u32Color;
};
#endif

#ifdef CONFIG_HI_ISP_HLC_SUPPORT
static const ISP_CMOS_HLC_S g_stIspHlc = {
    0,    // HI_BOOL bEnable;
    248,  // HI_U8 u8LumaThr;
    10,   // HI_U8 u8LumaTarget;
};
#endif

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpen = {
    /* u8SkinUmin */
    100,
    /* u8SkinVmin */
    135,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    150,

    /* Manual Para */
    {
        /* au8LumaWgt[ISP_SHARPEN_LUMA_NUM] */
        { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
          127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
        /* u16TextureStr[ISP_SHARPEN_GAIN_NUM] */
        { 250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270,
          270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150 },
        /* u16EdgeStr[ISP_SHARPEN_GAIN_NUM] */
        { 120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210,
          210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120 },
        /* u16TextureFreq */
        190,
        /* u16EdgeFreq */
        128,
        /* u8OverShoot */
        65,
        /* u8UnderShoot */
        75,
        /* u8shootSupStr */
        7,
        /* u8shootSupAdj */
        9,
        /* u8DetailCtrl */
        128,
        /* u8DetailCtrlThr */
        180,
        /* u8EdgeFiltStr */
        60,
        /* u8EdgeFiltMaxCap; */
        18,
        /* u8RGain */
        20,
        /* u8GGain */
        32,
        /* u8BGain */
        20,
        /* u8SkinGain */
        25,
        /* u8MaxSharpGain */
        40 },

    /* Auto Para */
    {
        /* au16LumaWgt[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100,  200,  400,  800,  1600,  3200,  6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200,
           1638400, 3276800 */
        {{ 127, 127, 127, 111, 100, 90, 73, 73, 73, 73, 73, 49, 49, 49, 49, 49 },
         { 127, 127, 127, 116, 106, 100, 80, 80, 80, 80, 80, 55, 55, 55, 55, 55 },
         { 127, 127, 127, 120, 111, 106, 88, 88, 88, 88, 88, 62, 62, 62, 62, 62 },
         { 127, 127, 127, 123, 116, 112, 95, 95, 95, 95, 95, 70, 70, 70, 70, 70 },
         { 127, 127, 127, 125, 119, 116, 102, 102, 102, 102, 102, 77, 77, 77, 77, 77 },
         { 127, 127, 127, 127, 122, 120, 107, 107, 107, 107, 107, 84, 84, 84, 84, 84 },
         { 127, 127, 127, 127, 124, 123, 111, 111, 111, 111, 111, 90, 90, 90, 90, 90 },
         { 127, 127, 127, 127, 125, 125, 115, 115, 115, 115, 115, 96, 96, 96, 96, 96 },
         { 127, 127, 127, 127, 126, 126, 119, 119, 119, 119, 119, 102, 102, 102, 102, 102 },
         { 127, 127, 127, 127, 127, 127, 121, 121, 121, 121, 121, 106, 106, 106, 106, 106 },
         { 127, 127, 127, 127, 127, 127, 124, 124, 124, 124, 124, 110, 110, 110, 110, 110 },
         { 127, 127, 127, 127, 127, 127, 125, 125, 125, 125, 125, 114, 114, 114, 114, 114 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 117, 117, 117, 117, 117 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 120, 120, 120, 120, 120 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 123, 123, 123, 123, 123 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 125, 125, 125, 125, 125 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 }},

        /* au16TextureStr[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400,
           3276800 */
        {
            { 95, 76, 95, 63, 15, 9, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 95, 76, 95, 63, 15, 9, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 98, 79, 98, 66, 17, 9, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 98, 79, 98, 66, 17, 10, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 102, 83, 102, 68, 21, 13, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 102, 83, 102, 68, 21, 15, 10, 10, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 105, 86, 105, 71, 24, 19, 13, 13, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 105, 86, 105, 71, 24, 24, 15, 15, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 109, 90, 109, 74, 28, 34, 19, 19, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 109, 90, 109, 74, 28, 41, 24, 24, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 112, 94, 112, 77, 32, 51, 34, 34, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 112, 94, 112, 77, 32, 63, 41, 41, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 116, 98, 116, 80, 35, 75, 51, 51, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 116, 98, 116, 80, 35, 81, 57, 57, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 119, 101, 119, 83, 39, 87, 63, 63, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 119, 101, 119, 83, 39, 91, 69, 69, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 123, 106, 123, 85, 43, 96, 75, 75, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 126, 110, 126, 88, 46, 102, 87, 87, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 130, 115, 130, 91, 49, 104, 96, 96, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 134, 120, 134, 93, 52, 99, 102, 102, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 138, 126, 138, 95, 55, 88, 104, 104, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 145, 135, 145, 99, 58, 73, 99, 99, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 150, 142, 150, 104, 60, 56, 88, 88, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 151, 143, 151, 106, 59, 44, 78, 78, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 153, 143, 153, 108, 58, 34, 67, 67, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 153, 142, 153, 109, 55, 22, 50, 50, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 153, 139, 153, 109, 51, 14, 34, 34, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 148, 135, 148, 106, 44, 10, 22, 22, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 139, 130, 139, 102, 37, 7, 14, 14, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 128, 123, 128, 95, 30, 7, 8, 8, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 117, 117, 117, 89, 23, 8, 7, 7, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 109, 113, 109, 86, 19, 9, 8, 8, 6, 6, 5, 5, 5, 5, 5, 5 }},
        /* au16EdgeStr */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800
         */
        {
            { 193, 193, 183, 173, 163, 153, 143, 133, 123, 113, 103, 93, 93, 93, 93, 93 },
            { 197, 197, 189, 179, 169, 159, 149, 138, 128, 118, 108, 98, 98, 98, 98, 98 },
            { 202, 202, 195, 185, 175, 165, 155, 145, 134, 124, 114, 103, 103, 103, 103, 103 },
            { 209, 209, 201, 191, 181, 171, 161, 151, 140, 130, 119, 109, 109, 109, 109, 109 },
            { 216, 216, 208, 198, 188, 178, 168, 157, 146, 135, 125, 114, 114, 114, 114, 114 },
            { 222, 222, 213, 203, 193, 183, 173, 162, 151, 140, 129, 119, 119, 119, 119, 119 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 122, 122, 122, 122, 122 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 123, 123, 123, 123, 123 },
            { 225, 225, 215, 205, 194, 184, 174, 163, 153, 142, 131, 121, 121, 121, 121, 121 },
            { 222, 222, 211, 201, 191, 181, 171, 160, 150, 139, 129, 118, 118, 118, 118, 118 },
            { 218, 218, 207, 197, 187, 177, 167, 156, 146, 136, 125, 115, 115, 115, 115, 115 },
            { 213, 213, 203, 193, 183, 173, 163, 152, 142, 132, 122, 112, 112, 112, 112, 112 },
            { 208, 208, 198, 188, 178, 168, 158, 148, 138, 128, 118, 108, 108, 108, 108, 108 },
            { 202, 202, 192, 182, 173, 163, 153, 143, 133, 124, 114, 104, 104, 104, 104, 104 },
            { 195, 195, 186, 176, 167, 157, 147, 138, 128, 119, 109, 99, 99, 99, 99, 99 },
            { 188, 188, 179, 169, 160, 150, 141, 132, 122, 113, 103, 94, 94, 94, 94, 94 },
            { 180, 180, 171, 162, 153, 143, 135, 125, 116, 107, 97, 89, 89, 89, 89, 89 },
            { 171, 171, 162, 154, 145, 136, 128, 119, 110, 101, 91, 83, 83, 83, 83, 83 },
            { 162, 162, 154, 145, 137, 128, 120, 112, 103, 94, 85, 77, 77, 77, 77, 77 },
            { 153, 153, 145, 137, 128, 120, 113, 104, 96, 88, 78, 71, 71, 71, 71, 71 },
            { 144, 144, 136, 128, 120, 112, 105, 97, 89, 81, 72, 65, 65, 65, 65, 65 },
            { 135, 135, 126, 118, 111, 103, 97, 89, 81, 74, 66, 59, 59, 59, 59, 59 },
            { 125, 125, 115, 108, 100, 93, 87, 80, 73, 66, 58, 52, 52, 52, 52, 52 },
            { 114, 114, 103, 96, 89, 82, 77, 70, 64, 58, 51, 45, 45, 45, 45, 45 },
            { 104, 104, 92, 85, 78, 71, 67, 61, 55, 50, 44, 38, 38, 38, 38, 38 },
            { 93, 93, 80, 74, 67, 60, 57, 52, 46, 42, 37, 32, 32, 32, 32, 32 },
            { 82, 82, 70, 64, 57, 51, 48, 43, 38, 35, 30, 26, 26, 26, 26, 26 },
            { 72, 72, 61, 55, 49, 43, 41, 36, 32, 29, 25, 21, 21, 21, 21, 21 },
            { 61, 61, 55, 49, 43, 37, 35, 31, 27, 25, 21, 17, 17, 17, 17, 17 }},
        /* au16TextureFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200,  102400,  204800,   409600,   819200,   1638400,
           3276800 */
        { 200, 180, 160, 140, 140, 140, 130, 128, 128, 128, 128, 100, 100, 100, 100, 100 },
        /* au16EdgeFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 150, 140, 130, 120, 110, 100, 100, 100, 100, 100, 96, 96, 96, 96, 96, 96 },
        /* au8OverShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 55, 60, 60, 65, 60, 60, 55, 50, 50, 50, 30, 10, 10, 10, 10, 10 },
        /* au8UnderShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60, 65, 65, 70, 75, 80, 75, 65, 55, 55, 55, 55, 55, 15, 15, 15 },
        /* au8ShootSupStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 1, 2, 3, 4, 4, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 },
        /* au8ShootSupAdj[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 2, 3, 4, 4, 4, 4, 5, 5, 5, 3, 4, 4, 4, 4, 4, 4 },
        /* au8DetailCtrl[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 128, 128, 128, 120, 110, 105, 100, 100, 90, 80, 70, 70, 70, 70, 70, 70 },
        /* au8DetailCtrlThr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180 },
        /* au8EdgeFiltStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60 },
        /* au8EdgeFiltMaxCap */
        { 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18 },
        /* au8RGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 },
        /* au8GGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 40, 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32 },
        /* au8BGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 31, 31, 25, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 },
        /* au8SkinGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25 },
        /* u8MaxSharpGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 }},
};

static AWB_CCM_S g_stAwbCcm = {
    4,
    {
        {
            7542,  // D75
            { 0x02AE, 0x8196, 0x8018, 0x806A, 0x01C1, 0x8057, 0x0001, 0x8156, 0x0255 },
        },
        {
            4926,  // D50
            { 0x029B, 0x8171, 0x802A, 0x806A, 0x01A7, 0x803D, 0x0012, 0x81B5, 0x02A3 },
        },
        {
            3773,  // TL84
            { 0x021D, 0x80CC, 0x8051, 0x80CB, 0x0208, 0x803D, 0x8004, 0x818F, 0x0293 },
        },
        {
            2650,  // A
            { 0x021D, 0x80CC, 0x8051, 0x80CB, 0x0208, 0x803D, 0x8004, 0x818F, 0x0293 },
        },
        {
            1600,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1400,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1000,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
    },
};

static AWB_AGC_TABLE_S g_stAwbAgcTable = {
    /* bvalid */
    1,

    /* 1,  2,  4,  8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768 */
    /* saturation */
    {128, 126, 126, 122, 120, 118, 110, 105, 105, 78, 64, 64, 64, 64, 64, 64}
};

static const ISP_CMOS_DEHAZE_S g_stIspDehaze = {
    /* bEnable */
    0,
    /* bUserLutEnable */
    0,
    /* enOpType */
    0,
    /* u8AutoStrength */
    128,
    /* u8ManualStrength */
    128
};

static const ISP_CMOS_DRC_S g_stIspDRC = {
    /* bEnable */
    0,
    /* enOpType */
    0,
    /* u16ManualStrength */
    512,
    /* u16AutoStrength */
    512,
    /* u8SpatialFltCoef */
    2,
    /* u8RangeFltCoef */
    2,
    /* u8ContrastControl */
    8,
    /* s8DetailAdjustFactor */
    0,
    /* u8RangeAdaMax */
    8,
    /* u8FltScaleFine */
    6,
    /* u8FltScaleCoarse */
    6,
    /* u8GradRevMax */
    64,
    /* u8GradRevThr */
    50,
    /* u8BrightGainLmt */
    15,
    /* u8BrightGainLmtStep */
    10,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    0,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    64,
    /* u8LocalMixingBrightMin */
    32,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    64,
    /* u8LocalMixingDarkMin */
    32,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    { 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
      1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024 },
    /* ToneMappingValue[200] */
    { 8,     8,     16,    24,    31,    39,    48,    56,    65,    75,    85,    95,    106,   118,   130,   143,
      156,   170,   185,   201,   218,   235,   254,   274,   294,   316,   339,   364,   390,   417,   446,   477,
      509,   543,   579,   617,   658,   701,   746,   794,   844,   898,   955,   1015,  1078,  1145,  1216,  1291,
      1370,  1454,  1543,  1637,  1736,  1841,  1952,  2069,  2194,  2325,  2465,  2612,  2767,  2932,  3106,  3290,
      3485,  3691,  3909,  4140,  4384,  4641,  4914,  5202,  5507,  5830,  6171,  6531,  6913,  7316,  7742,  8193,
      8669,  9173,  9705,  10268, 10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635,
      19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451,
      26959, 27473, 27995, 28524, 29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706,
      36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008,
      45424, 45842, 46265, 46691, 47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113,
      52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429,
      58697, 58967, 59238, 59510, 59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877,
      63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234 },
    /* u8Asymmetry */
    2,
    /* u8SecondPole */
    180,
    /* u8Stretch */
    54,
    /* u8Compress */
    180,
    /* u8CurveSel */
    0,
    /* au16Xpoint */
    { 0, 200, 400, 600, 1000 },
    /* au16Ypoint */
    { 0, 200, 400, 600, 1000 },
    /* au16Slope */
    { 1000, 1000, 1000, 1000, 1000 }
};

#ifdef CONFIG_HI_ISP_CA_SUPPORT
static const ISP_CMOS_CA_S g_stIspCA = {
    /* CA */
    1,
    /* Y */
    { 36,   81,   111,  136,  158,  182,  207,  228,  259,  290,  317,  345,  369,  396, 420, 444, 468,  492,  515,
      534,  556,  574,  597,  614,  632,  648,  666,  681,  697,  709,  723,  734,  748, 758, 771, 780,  788,  800,
      808,  815,  822,  829,  837,  841,  848,  854,  858,  864,  868,  871,  878,  881, 885, 890, 893,  897,  900,
      903,  906,  909,  912,  915,  918,  921,  924,  926,  929,  931,  934,  936,  938, 941, 943, 945,  947,  949,
      951,  952,  954,  956,  958,  961,  962,  964,  966,  968,  969,  970,  971,  973, 974, 976, 977,  979,  980,
      981,  983,  984,  985,  986,  988,  989,  990,  991,  992,  993,  995,  996,  997, 998, 999, 1000, 1001, 1004,
      1005, 1006, 1007, 1009, 1010, 1011, 1012, 1014, 1016, 1017, 1019, 1020, 1022, 1024 },
    /* ISO */
    { 1300, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 900, 800, 800, 800, 800, 800 }
};
#endif

static const ISP_CMOS_LSC_S g_stCmosLsc_8M = {
    /* MeshStrength */
    4096,
    /* MeshScale */
    1,
    /* ISP_LSC_CABLI_TABLE_S */
    {
        {
            // RGain:
            {
                446, 403, 366, 341, 325, 312, 302, 299, 291, 285, 280, 279, 276, 273, 272, 270, 269, 268, 268, 270, 272, 274, 276, 281, 285, 288, 294, 301, 312, 324, 346, 377, 420, 
                437, 389, 357, 337, 320, 310, 301, 293, 289, 281, 279, 276, 272, 271, 269, 267, 269, 268, 268, 269, 271, 272, 275, 279, 282, 287, 291, 298, 310, 319, 336, 365, 399, 
                420, 380, 351, 332, 316, 306, 300, 291, 284, 280, 278, 273, 272, 270, 266, 266, 266, 264, 265, 266, 269, 271, 272, 275, 279, 281, 290, 297, 303, 314, 333, 354, 382, 
                407, 369, 344, 325, 311, 302, 297, 291, 283, 279, 275, 271, 269, 268, 267, 263, 264, 264, 264, 264, 266, 269, 270, 274, 277, 281, 287, 291, 300, 312, 325, 344, 372, 
                393, 364, 337, 322, 310, 300, 294, 288, 281, 277, 273, 271, 268, 266, 265, 262, 263, 261, 263, 264, 266, 268, 269, 273, 277, 281, 284, 288, 297, 307, 318, 338, 363, 
                382, 355, 335, 320, 307, 300, 291, 288, 282, 277, 272, 270, 268, 265, 264, 262, 262, 261, 262, 263, 264, 265, 268, 272, 273, 278, 281, 287, 294, 302, 315, 331, 354, 
                372, 350, 332, 314, 304, 299, 290, 284, 279, 275, 270, 269, 265, 263, 262, 262, 262, 262, 262, 262, 264, 264, 267, 269, 272, 275, 280, 288, 291, 301, 313, 327, 348, 
                370, 344, 326, 314, 302, 299, 290, 284, 279, 273, 270, 269, 264, 264, 262, 261, 261, 262, 262, 261, 262, 264, 265, 268, 271, 277, 281, 285, 291, 297, 310, 323, 340, 
                365, 340, 324, 311, 301, 292, 289, 282, 278, 273, 270, 267, 264, 262, 263, 261, 261, 262, 260, 262, 261, 263, 264, 269, 271, 273, 278, 283, 289, 297, 305, 318, 337, 
                360, 338, 321, 310, 301, 293, 288, 281, 278, 273, 269, 267, 264, 262, 262, 260, 260, 260, 259, 261, 261, 263, 263, 267, 271, 272, 278, 282, 289, 297, 307, 316, 333, 
                356, 336, 318, 309, 299, 292, 286, 280, 275, 271, 269, 265, 264, 262, 262, 260, 259, 261, 260, 261, 261, 262, 263, 264, 269, 272, 278, 282, 288, 293, 302, 315, 329, 
                353, 336, 317, 305, 298, 291, 285, 280, 278, 272, 268, 264, 263, 262, 261, 261, 259, 260, 259, 261, 261, 261, 264, 265, 269, 272, 276, 281, 287, 293, 303, 313, 328, 
                351, 334, 315, 305, 297, 290, 284, 279, 275, 270, 267, 264, 261, 261, 260, 259, 260, 258, 257, 260, 261, 262, 263, 264, 268, 271, 275, 281, 286, 292, 301, 311, 327, 
                349, 334, 314, 303, 297, 289, 286, 279, 273, 271, 268, 265, 263, 261, 260, 259, 259, 257, 258, 260, 260, 262, 263, 265, 268, 270, 274, 280, 287, 290, 299, 310, 327, 
                350, 328, 314, 305, 298, 289, 283, 278, 273, 271, 268, 266, 262, 261, 260, 258, 258, 258, 257, 258, 260, 262, 262, 264, 267, 271, 273, 279, 283, 291, 299, 310, 324, 
                349, 331, 313, 302, 297, 289, 284, 278, 275, 270, 266, 265, 262, 261, 260, 258, 259, 257, 259, 258, 258, 261, 262, 262, 266, 270, 273, 279, 284, 289, 298, 309, 323, 
                347, 327, 313, 303, 295, 289, 281, 278, 272, 270, 264, 264, 263, 261, 258, 258, 257, 257, 257, 259, 258, 259, 260, 262, 266, 270, 272, 279, 284, 291, 298, 306, 322, 
                348, 326, 313, 301, 293, 288, 281, 278, 272, 269, 266, 263, 263, 261, 260, 256, 257, 257, 257, 257, 258, 259, 260, 261, 266, 269, 272, 278, 281, 289, 297, 308, 321, 
                349, 326, 312, 302, 295, 288, 281, 278, 271, 269, 265, 263, 262, 260, 258, 257, 257, 259, 256, 257, 259, 260, 262, 263, 266, 269, 272, 278, 281, 289, 297, 305, 321, 
                346, 327, 312, 302, 296, 288, 284, 276, 271, 269, 266, 263, 263, 259, 258, 257, 258, 256, 256, 257, 260, 260, 261, 262, 264, 270, 272, 276, 281, 289, 295, 308, 319, 
                349, 326, 313, 302, 297, 288, 281, 279, 271, 269, 265, 263, 262, 260, 258, 256, 256, 257, 257, 258, 257, 258, 260, 262, 266, 268, 272, 277, 283, 289, 297, 305, 320, 
                344, 329, 313, 302, 298, 288, 282, 278, 272, 269, 265, 264, 261, 261, 259, 257, 257, 256, 257, 257, 259, 260, 261, 262, 264, 267, 273, 278, 282, 289, 297, 306, 322, 
                346, 329, 313, 302, 297, 288, 282, 277, 273, 270, 264, 264, 262, 260, 259, 257, 257, 257, 256, 257, 257, 260, 261, 263, 265, 269, 273, 278, 281, 289, 297, 309, 325, 
                350, 329, 314, 303, 297, 289, 282, 279, 273, 270, 264, 263, 261, 259, 259, 258, 256, 257, 257, 257, 258, 258, 261, 263, 268, 269, 276, 279, 282, 289, 299, 309, 325, 
                351, 330, 315, 304, 297, 290, 284, 278, 275, 269, 266, 263, 262, 260, 260, 258, 257, 258, 258, 258, 259, 260, 261, 263, 268, 270, 276, 279, 284, 289, 299, 310, 328, 
                354, 335, 320, 305, 297, 291, 285, 279, 275, 269, 266, 263, 262, 260, 260, 258, 258, 258, 257, 260, 260, 261, 262, 263, 266, 270, 277, 279, 284, 291, 300, 312, 329, 
                356, 336, 320, 309, 298, 290, 288, 281, 274, 271, 268, 265, 263, 262, 260, 260, 257, 260, 258, 258, 261, 260, 261, 264, 268, 272, 276, 281, 286, 291, 302, 313, 333, 
                363, 338, 322, 310, 300, 291, 288, 282, 277, 272, 268, 267, 263, 261, 261, 261, 259, 259, 259, 261, 261, 261, 263, 265, 268, 272, 276, 281, 288, 293, 305, 316, 336, 
                367, 342, 325, 312, 302, 293, 289, 282, 279, 272, 268, 265, 263, 263, 262, 261, 261, 260, 260, 261, 261, 262, 264, 266, 271, 273, 279, 282, 291, 296, 308, 321, 338, 
                377, 348, 327, 313, 302, 297, 289, 286, 279, 274, 271, 268, 265, 263, 261, 262, 260, 262, 260, 261, 261, 263, 266, 269, 271, 277, 280, 286, 291, 300, 310, 326, 346, 
                386, 352, 332, 320, 308, 299, 291, 286, 281, 278, 272, 270, 268, 266, 264, 261, 262, 262, 262, 262, 263, 264, 266, 270, 272, 278, 281, 288, 293, 302, 314, 330, 354, 
                390, 360, 337, 321, 310, 300, 295, 289, 283, 278, 274, 270, 268, 265, 264, 263, 263, 262, 262, 263, 265, 268, 270, 272, 275, 280, 284, 289, 297, 307, 319, 337, 366, 
                404, 366, 344, 327, 312, 302, 297, 291, 283, 279, 276, 272, 270, 267, 263, 266, 263, 264, 263, 263, 268, 266, 271, 272, 277, 281, 284, 291, 299, 309, 324, 343, 373
            },
            // GrGain:
            {
                433, 390, 356, 334, 320, 308, 301, 294, 290, 284, 279, 274, 273, 272, 270, 271, 269, 269, 272, 273, 276, 278, 282, 286, 290, 296, 303, 311, 319, 335, 354, 382, 421, 
                418, 380, 350, 329, 316, 307, 298, 292, 286, 283, 278, 274, 271, 270, 268, 268, 268, 268, 270, 271, 274, 277, 279, 281, 287, 291, 298, 307, 317, 329, 347, 374, 406, 
                403, 369, 343, 324, 312, 302, 296, 289, 283, 278, 275, 272, 269, 268, 266, 266, 266, 266, 267, 270, 270, 274, 276, 281, 285, 288, 296, 303, 311, 323, 343, 364, 394, 
                394, 360, 336, 320, 309, 300, 293, 287, 281, 276, 273, 270, 267, 266, 265, 263, 264, 263, 265, 267, 269, 272, 275, 279, 282, 287, 294, 301, 309, 318, 333, 356, 382, 
                381, 353, 330, 315, 305, 297, 293, 286, 279, 273, 272, 268, 265, 263, 263, 262, 261, 263, 264, 266, 268, 270, 272, 275, 279, 284, 291, 298, 307, 315, 329, 346, 372, 
                372, 347, 329, 313, 303, 295, 289, 283, 278, 274, 268, 266, 264, 263, 263, 260, 260, 261, 261, 263, 265, 268, 270, 274, 279, 284, 289, 295, 303, 311, 324, 342, 362, 
                363, 343, 323, 309, 301, 293, 287, 282, 276, 272, 268, 264, 263, 261, 262, 260, 261, 260, 261, 263, 264, 265, 268, 271, 276, 281, 286, 293, 300, 309, 321, 336, 358, 
                360, 337, 321, 308, 298, 292, 285, 280, 275, 270, 267, 263, 261, 260, 260, 260, 259, 259, 260, 261, 263, 265, 267, 271, 275, 280, 286, 291, 296, 307, 318, 331, 353, 
                354, 335, 317, 305, 298, 290, 284, 279, 273, 270, 266, 263, 261, 260, 259, 259, 259, 258, 259, 260, 262, 264, 267, 269, 274, 278, 283, 290, 296, 305, 315, 329, 349, 
                350, 330, 315, 303, 295, 290, 283, 277, 273, 268, 265, 263, 260, 259, 259, 258, 259, 258, 259, 259, 262, 264, 266, 268, 273, 278, 284, 289, 295, 302, 314, 327, 343, 
                345, 329, 314, 303, 294, 287, 283, 277, 273, 267, 264, 261, 260, 260, 259, 258, 258, 259, 258, 260, 261, 263, 264, 267, 270, 276, 281, 286, 294, 302, 311, 323, 340, 
                344, 327, 313, 301, 295, 288, 281, 276, 272, 267, 264, 261, 260, 258, 259, 257, 258, 258, 258, 259, 260, 261, 263, 265, 269, 275, 279, 286, 292, 299, 310, 321, 338, 
                344, 325, 312, 301, 294, 286, 280, 275, 270, 268, 263, 260, 260, 258, 258, 256, 256, 258, 258, 259, 260, 262, 263, 266, 269, 273, 278, 286, 291, 299, 308, 319, 336, 
                342, 324, 311, 301, 291, 286, 280, 275, 270, 268, 263, 262, 260, 258, 257, 256, 256, 256, 258, 259, 260, 261, 263, 266, 270, 274, 280, 286, 291, 299, 308, 318, 336, 
                340, 322, 309, 299, 291, 285, 281, 274, 269, 267, 264, 262, 260, 258, 257, 257, 256, 258, 259, 258, 260, 261, 263, 265, 269, 274, 279, 284, 291, 298, 307, 317, 332, 
                337, 322, 309, 301, 291, 284, 280, 275, 270, 268, 264, 262, 260, 258, 257, 256, 256, 258, 258, 258, 260, 261, 263, 265, 270, 275, 278, 284, 290, 298, 306, 318, 332, 
                337, 322, 308, 300, 291, 284, 279, 274, 269, 265, 263, 261, 259, 259, 256, 256, 256, 256, 258, 258, 260, 262, 263, 264, 269, 275, 276, 284, 290, 296, 307, 316, 330, 
                339, 321, 308, 300, 290, 284, 279, 274, 269, 267, 263, 260, 260, 258, 256, 256, 256, 258, 258, 258, 259, 260, 261, 265, 269, 274, 278, 283, 289, 296, 305, 316, 330, 
                337, 322, 308, 299, 291, 284, 278, 273, 269, 266, 263, 261, 260, 258, 257, 256, 256, 256, 257, 258, 259, 261, 261, 265, 269, 273, 277, 283, 290, 295, 304, 315, 329, 
                338, 321, 308, 298, 291, 284, 278, 273, 269, 266, 261, 262, 260, 259, 256, 256, 256, 256, 256, 258, 260, 260, 262, 264, 268, 272, 276, 283, 290, 296, 305, 316, 329, 
                338, 322, 308, 298, 290, 284, 279, 273, 269, 266, 263, 262, 259, 258, 256, 257, 256, 256, 256, 258, 260, 261, 263, 263, 268, 271, 277, 283, 290, 295, 305, 317, 330, 
                341, 323, 308, 298, 291, 284, 279, 273, 269, 267, 262, 260, 259, 259, 258, 256, 256, 258, 258, 258, 259, 261, 263, 265, 270, 272, 279, 283, 290, 296, 304, 317, 331, 
                341, 322, 310, 301, 291, 285, 278, 273, 269, 266, 263, 262, 259, 259, 258, 257, 257, 258, 259, 258, 260, 262, 264, 265, 269, 274, 279, 284, 290, 297, 307, 317, 332, 
                342, 324, 310, 301, 293, 286, 279, 274, 270, 265, 263, 261, 260, 259, 258, 257, 257, 258, 258, 259, 260, 261, 263, 266, 270, 273, 279, 284, 291, 296, 307, 320, 334, 
                345, 327, 310, 301, 294, 287, 280, 275, 271, 268, 264, 261, 260, 258, 258, 258, 259, 257, 259, 259, 260, 263, 264, 268, 271, 275, 280, 285, 292, 298, 308, 321, 336, 
                345, 328, 314, 302, 294, 289, 282, 276, 271, 268, 265, 262, 261, 259, 259, 258, 259, 258, 258, 260, 260, 262, 264, 268, 271, 276, 280, 285, 292, 298, 309, 322, 338, 
                349, 330, 315, 303, 296, 289, 284, 278, 273, 268, 266, 264, 262, 260, 260, 259, 258, 259, 259, 260, 261, 262, 265, 268, 273, 277, 282, 287, 294, 300, 310, 323, 343, 
                354, 335, 317, 307, 298, 291, 284, 279, 273, 270, 266, 264, 263, 261, 260, 260, 259, 260, 260, 261, 262, 263, 265, 269, 274, 278, 283, 289, 295, 304, 314, 327, 346, 
                359, 338, 322, 309, 300, 292, 286, 281, 276, 273, 268, 264, 264, 262, 261, 261, 261, 261, 261, 263, 263, 264, 267, 269, 275, 280, 285, 290, 298, 306, 316, 331, 353, 
                368, 343, 323, 311, 302, 294, 288, 283, 278, 273, 269, 266, 265, 263, 263, 262, 260, 262, 263, 263, 264, 267, 268, 274, 276, 281, 286, 293, 300, 308, 320, 337, 357, 
                378, 349, 328, 315, 303, 296, 290, 285, 279, 275, 271, 268, 266, 265, 263, 263, 264, 264, 263, 264, 268, 268, 271, 275, 278, 282, 289, 295, 302, 311, 323, 343, 365, 
                384, 354, 334, 317, 308, 301, 293, 287, 282, 278, 273, 270, 268, 267, 265, 265, 264, 264, 265, 267, 268, 270, 273, 277, 280, 286, 290, 297, 306, 315, 328, 347, 373, 
                400, 362, 337, 324, 311, 302, 295, 290, 284, 278, 274, 273, 270, 268, 265, 265, 266, 267, 268, 268, 270, 272, 274, 279, 283, 288, 293, 300, 308, 319, 334, 356, 378
            },
            // GbGain:
            {
                437, 391, 355, 333, 322, 309, 301, 292, 288, 283, 276, 275, 274, 271, 270, 270, 270, 271, 268, 272, 274, 278, 281, 285, 290, 296, 303, 308, 319, 332, 355, 385, 426, 
                423, 380, 348, 330, 316, 305, 298, 292, 286, 281, 276, 273, 272, 270, 268, 269, 267, 267, 269, 270, 273, 275, 278, 283, 287, 292, 299, 307, 315, 329, 346, 373, 406, 
                406, 368, 344, 324, 313, 303, 296, 290, 282, 279, 276, 271, 268, 268, 268, 265, 265, 266, 267, 268, 271, 274, 278, 280, 283, 287, 295, 303, 311, 322, 339, 362, 395, 
                391, 361, 336, 321, 310, 302, 292, 288, 281, 276, 272, 269, 268, 266, 265, 265, 265, 264, 266, 267, 269, 270, 274, 278, 282, 286, 292, 299, 309, 319, 333, 354, 382, 
                382, 353, 332, 317, 305, 297, 290, 284, 279, 275, 270, 268, 265, 264, 262, 261, 262, 263, 264, 265, 267, 268, 271, 276, 280, 285, 291, 298, 304, 316, 329, 347, 370, 
                372, 348, 328, 315, 303, 295, 290, 284, 278, 273, 269, 265, 264, 262, 260, 260, 260, 261, 261, 263, 266, 267, 270, 274, 277, 283, 288, 294, 302, 311, 324, 341, 364, 
                365, 341, 323, 311, 301, 293, 286, 281, 276, 271, 267, 264, 261, 261, 260, 261, 260, 260, 262, 262, 264, 266, 268, 271, 276, 280, 286, 292, 299, 309, 322, 336, 355, 
                360, 338, 321, 309, 299, 292, 286, 280, 275, 270, 267, 264, 261, 260, 259, 259, 260, 259, 260, 261, 262, 264, 267, 270, 275, 279, 285, 290, 299, 305, 318, 331, 351, 
                354, 333, 319, 305, 297, 290, 284, 279, 274, 270, 267, 262, 260, 260, 260, 259, 258, 259, 259, 260, 263, 264, 266, 269, 273, 278, 283, 289, 296, 303, 315, 328, 346, 
                351, 330, 316, 305, 296, 289, 284, 278, 272, 268, 266, 263, 260, 259, 259, 259, 258, 260, 259, 260, 262, 264, 265, 268, 273, 277, 283, 289, 296, 302, 313, 325, 342, 
                348, 329, 315, 303, 297, 290, 282, 278, 272, 268, 265, 263, 260, 259, 259, 258, 259, 258, 259, 259, 261, 262, 263, 268, 271, 276, 281, 286, 292, 300, 310, 323, 339, 
                345, 326, 313, 302, 295, 287, 281, 276, 271, 267, 265, 262, 260, 259, 259, 257, 258, 257, 258, 260, 260, 262, 264, 267, 269, 275, 280, 285, 292, 300, 310, 321, 336, 
                341, 325, 312, 301, 292, 287, 281, 276, 270, 267, 263, 261, 259, 259, 257, 257, 258, 258, 258, 258, 260, 263, 263, 266, 270, 273, 279, 284, 291, 298, 309, 319, 335, 
                344, 324, 310, 302, 292, 286, 280, 276, 270, 267, 264, 260, 260, 259, 258, 257, 256, 257, 258, 259, 259, 260, 264, 265, 270, 274, 279, 285, 290, 297, 307, 318, 336, 
                342, 324, 309, 300, 292, 285, 280, 276, 270, 267, 264, 261, 260, 258, 257, 256, 257, 257, 259, 259, 260, 262, 263, 266, 269, 275, 278, 284, 290, 298, 307, 319, 334, 
                339, 323, 310, 301, 291, 286, 279, 275, 269, 267, 264, 262, 259, 259, 258, 256, 257, 258, 259, 259, 260, 261, 263, 264, 270, 275, 279, 283, 290, 297, 305, 316, 330, 
                339, 323, 309, 299, 291, 285, 279, 274, 270, 266, 263, 261, 260, 258, 257, 256, 257, 257, 259, 258, 260, 260, 263, 263, 270, 274, 279, 284, 290, 297, 306, 316, 330, 
                338, 322, 309, 299, 291, 284, 279, 274, 270, 266, 263, 261, 259, 259, 257, 257, 256, 257, 258, 258, 259, 260, 261, 265, 270, 274, 279, 284, 289, 297, 304, 316, 329, 
                339, 322, 309, 299, 291, 284, 278, 273, 269, 265, 263, 261, 260, 258, 257, 256, 256, 257, 257, 258, 259, 260, 263, 264, 268, 274, 277, 282, 290, 296, 303, 315, 331, 
                337, 323, 309, 299, 292, 284, 280, 274, 269, 265, 263, 261, 260, 258, 257, 256, 257, 257, 257, 258, 259, 261, 263, 264, 267, 273, 278, 282, 290, 296, 303, 314, 330, 
                340, 322, 310, 301, 291, 284, 279, 273, 269, 266, 264, 260, 259, 259, 258, 257, 256, 256, 257, 257, 260, 262, 263, 264, 267, 272, 276, 284, 289, 296, 303, 316, 330, 
                342, 323, 309, 300, 291, 285, 279, 275, 270, 266, 262, 261, 260, 259, 257, 258, 258, 256, 258, 259, 258, 261, 264, 266, 269, 273, 277, 284, 289, 296, 305, 316, 330, 
                342, 324, 310, 301, 291, 285, 280, 274, 271, 266, 263, 261, 260, 259, 258, 257, 257, 259, 259, 260, 261, 261, 263, 266, 270, 273, 278, 284, 290, 297, 305, 317, 331, 
                342, 326, 311, 301, 293, 285, 281, 275, 271, 268, 263, 261, 260, 259, 258, 258, 258, 259, 258, 259, 261, 262, 264, 266, 269, 274, 279, 284, 290, 296, 307, 317, 335, 
                344, 327, 312, 301, 294, 287, 281, 275, 271, 268, 264, 261, 261, 259, 258, 258, 259, 259, 259, 259, 261, 262, 266, 267, 273, 275, 280, 286, 291, 297, 308, 319, 333, 
                347, 329, 314, 303, 296, 289, 283, 277, 273, 268, 264, 263, 261, 260, 259, 259, 258, 259, 260, 260, 262, 263, 265, 266, 272, 276, 280, 287, 292, 299, 308, 322, 337, 
                352, 331, 316, 304, 296, 290, 283, 279, 274, 269, 266, 263, 261, 260, 260, 260, 259, 260, 260, 260, 261, 264, 264, 268, 273, 277, 281, 287, 293, 301, 311, 324, 342, 
                355, 334, 317, 308, 297, 291, 285, 280, 274, 271, 267, 264, 262, 263, 260, 260, 260, 260, 260, 261, 262, 265, 267, 269, 273, 278, 284, 290, 294, 302, 315, 329, 345, 
                360, 338, 322, 309, 300, 293, 287, 282, 277, 273, 269, 265, 264, 263, 262, 261, 261, 261, 261, 263, 264, 264, 268, 270, 275, 279, 285, 292, 298, 305, 316, 332, 349, 
                367, 344, 324, 312, 302, 296, 289, 284, 278, 275, 270, 266, 265, 265, 264, 263, 262, 263, 262, 263, 265, 267, 268, 273, 278, 283, 287, 292, 300, 308, 320, 337, 358, 
                375, 349, 329, 315, 307, 297, 292, 286, 281, 275, 271, 269, 267, 266, 265, 264, 264, 264, 265, 265, 266, 269, 272, 276, 279, 283, 290, 296, 302, 311, 324, 344, 364, 
                390, 356, 333, 320, 309, 302, 293, 288, 281, 279, 273, 270, 268, 266, 266, 265, 266, 266, 267, 266, 269, 271, 273, 278, 282, 287, 291, 297, 305, 314, 328, 348, 376, 
                397, 365, 338, 324, 313, 303, 296, 290, 285, 279, 276, 273, 273, 268, 266, 268, 267, 267, 268, 268, 271, 272, 279, 279, 284, 289, 293, 300, 307, 320, 335, 353, 384
            },
            // BGain:
            {
                419, 382, 345, 322, 312, 298, 295, 288, 278, 277, 273, 271, 268, 268, 265, 264, 265, 263, 266, 265, 265, 268, 273, 275, 276, 279, 288, 293, 302, 313, 333, 362, 393, 
                405, 366, 338, 319, 306, 297, 289, 284, 278, 275, 272, 268, 266, 265, 264, 263, 262, 262, 263, 263, 265, 266, 273, 273, 274, 278, 284, 289, 300, 311, 327, 352, 384, 
                389, 357, 331, 314, 303, 292, 287, 283, 277, 274, 270, 270, 265, 264, 262, 262, 262, 262, 262, 263, 265, 266, 268, 272, 273, 274, 283, 288, 293, 304, 319, 341, 368, 
                378, 349, 327, 311, 298, 290, 287, 283, 276, 271, 269, 265, 264, 262, 262, 261, 262, 261, 262, 262, 263, 265, 265, 270, 272, 275, 279, 285, 291, 302, 316, 332, 358, 
                371, 344, 321, 306, 299, 288, 285, 279, 275, 270, 267, 265, 264, 262, 262, 261, 260, 260, 262, 261, 262, 264, 266, 267, 271, 274, 278, 284, 288, 299, 311, 324, 348, 
                360, 337, 317, 305, 296, 288, 283, 278, 274, 270, 266, 264, 262, 262, 260, 260, 260, 260, 260, 262, 262, 262, 265, 267, 268, 274, 276, 283, 288, 296, 307, 320, 339, 
                353, 333, 315, 303, 296, 288, 282, 277, 273, 270, 265, 264, 262, 258, 261, 260, 261, 260, 260, 260, 262, 262, 262, 266, 267, 271, 274, 279, 286, 294, 303, 317, 336, 
                348, 328, 313, 300, 291, 287, 279, 276, 272, 268, 265, 262, 261, 262, 260, 260, 260, 258, 260, 261, 261, 261, 263, 263, 266, 271, 274, 278, 285, 291, 300, 314, 330, 
                344, 327, 312, 300, 291, 286, 279, 276, 271, 269, 265, 264, 262, 262, 260, 258, 260, 259, 261, 260, 262, 262, 262, 265, 268, 272, 274, 277, 285, 290, 299, 312, 328, 
                341, 322, 307, 296, 290, 284, 281, 275, 271, 268, 265, 262, 262, 261, 259, 259, 260, 260, 260, 260, 261, 261, 262, 263, 266, 270, 273, 277, 285, 288, 298, 310, 323, 
                335, 319, 309, 298, 288, 283, 278, 274, 271, 266, 264, 263, 262, 260, 260, 260, 260, 260, 260, 260, 260, 262, 262, 265, 264, 270, 273, 277, 283, 288, 297, 307, 319, 
                337, 318, 306, 296, 289, 284, 278, 274, 270, 267, 263, 262, 262, 261, 261, 259, 260, 260, 260, 260, 260, 260, 262, 262, 264, 270, 273, 275, 279, 288, 296, 306, 317, 
                336, 317, 303, 296, 288, 283, 277, 274, 271, 268, 264, 264, 262, 261, 259, 259, 259, 259, 260, 260, 260, 261, 262, 263, 263, 267, 273, 274, 279, 286, 293, 304, 316, 
                332, 318, 303, 293, 288, 283, 278, 274, 269, 267, 264, 264, 262, 262, 260, 258, 260, 258, 260, 260, 261, 261, 262, 264, 264, 268, 269, 274, 281, 286, 292, 305, 315, 
                333, 316, 302, 293, 287, 281, 276, 274, 271, 269, 265, 264, 262, 262, 258, 260, 258, 260, 257, 258, 260, 261, 261, 262, 265, 265, 271, 275, 278, 285, 291, 302, 316, 
                332, 316, 302, 292, 287, 282, 276, 272, 268, 264, 264, 262, 262, 262, 260, 261, 260, 261, 260, 260, 258, 261, 262, 262, 264, 266, 267, 274, 278, 286, 290, 302, 315, 
                330, 314, 303, 293, 287, 283, 276, 274, 270, 266, 264, 264, 263, 262, 260, 258, 258, 259, 260, 260, 260, 260, 259, 262, 264, 266, 270, 274, 277, 284, 290, 303, 314, 
                331, 313, 300, 291, 288, 281, 275, 272, 267, 265, 264, 262, 262, 261, 257, 260, 258, 260, 261, 260, 260, 260, 260, 262, 264, 266, 268, 273, 278, 284, 290, 301, 313, 
                330, 314, 301, 292, 286, 281, 275, 272, 266, 265, 263, 262, 263, 261, 258, 259, 258, 258, 259, 259, 258, 260, 260, 262, 262, 265, 267, 271, 277, 282, 289, 300, 310, 
                333, 314, 300, 291, 286, 282, 275, 273, 267, 266, 264, 263, 262, 262, 260, 258, 260, 258, 259, 260, 260, 260, 260, 261, 263, 265, 266, 272, 277, 285, 289, 300, 314, 
                331, 313, 301, 292, 287, 279, 275, 271, 266, 265, 263, 262, 262, 260, 256, 259, 256, 257, 256, 260, 258, 260, 261, 261, 263, 265, 266, 274, 276, 283, 289, 300, 312, 
                333, 315, 303, 291, 287, 281, 275, 272, 267, 265, 263, 264, 262, 261, 261, 259, 256, 257, 260, 258, 260, 260, 261, 262, 263, 265, 270, 274, 278, 283, 290, 302, 313, 
                331, 315, 302, 291, 287, 283, 276, 271, 268, 266, 264, 262, 262, 261, 259, 257, 258, 260, 258, 256, 258, 261, 261, 262, 263, 266, 268, 273, 277, 284, 288, 302, 316, 
                336, 316, 302, 295, 288, 280, 275, 273, 269, 265, 263, 262, 262, 261, 261, 258, 258, 258, 258, 257, 258, 260, 262, 263, 263, 265, 270, 273, 278, 284, 291, 302, 317, 
                336, 317, 303, 296, 287, 283, 276, 273, 269, 265, 264, 262, 261, 260, 260, 259, 260, 258, 258, 258, 260, 262, 262, 262, 264, 267, 270, 274, 278, 283, 291, 305, 319, 
                339, 319, 304, 296, 288, 284, 278, 274, 270, 265, 265, 262, 263, 261, 259, 261, 260, 260, 260, 258, 260, 261, 262, 262, 265, 265, 272, 275, 278, 286, 292, 304, 319, 
                338, 320, 306, 298, 288, 283, 281, 274, 271, 267, 265, 264, 263, 261, 260, 260, 260, 260, 259, 260, 260, 260, 261, 262, 265, 266, 272, 276, 279, 287, 296, 307, 322, 
                343, 323, 310, 300, 289, 285, 279, 275, 271, 268, 264, 264, 262, 261, 260, 260, 259, 260, 257, 260, 260, 259, 260, 265, 265, 268, 273, 277, 279, 288, 297, 308, 330, 
                347, 328, 312, 301, 291, 285, 283, 276, 272, 269, 264, 264, 263, 263, 261, 260, 260, 259, 258, 260, 261, 262, 262, 263, 265, 268, 274, 278, 286, 289, 300, 314, 331, 
                357, 331, 314, 303, 292, 288, 281, 278, 274, 268, 266, 265, 262, 262, 262, 262, 262, 261, 260, 261, 260, 262, 263, 264, 266, 271, 274, 278, 285, 292, 303, 317, 337, 
                362, 337, 318, 306, 297, 289, 283, 279, 274, 269, 268, 264, 264, 262, 261, 260, 262, 260, 261, 260, 262, 262, 264, 265, 269, 272, 274, 280, 288, 294, 305, 326, 344, 
                372, 344, 322, 309, 299, 288, 285, 279, 275, 271, 269, 266, 265, 262, 263, 261, 261, 261, 262, 262, 262, 264, 265, 266, 272, 274, 277, 283, 288, 300, 311, 330, 354, 
                382, 350, 329, 314, 299, 295, 288, 281, 276, 273, 271, 267, 264, 262, 262, 262, 262, 262, 262, 264, 263, 263, 265, 271, 273, 275, 278, 288, 291, 300, 315, 333, 361
            },
        },
        // LscGainLut[1]
        {
            // RGain:
            {
                446, 403, 366, 341, 325, 312, 302, 299, 291, 285, 280, 279, 276, 273, 272, 270, 269, 268, 268, 270, 272, 274, 276, 281, 285, 288, 294, 301, 312, 324, 346, 377, 420, 
                437, 389, 357, 337, 320, 310, 301, 293, 289, 281, 279, 276, 272, 271, 269, 267, 269, 268, 268, 269, 271, 272, 275, 279, 282, 287, 291, 298, 310, 319, 336, 365, 399, 
                420, 380, 351, 332, 316, 306, 300, 291, 284, 280, 278, 273, 272, 270, 266, 266, 266, 264, 265, 266, 269, 271, 272, 275, 279, 281, 290, 297, 303, 314, 333, 354, 382, 
                407, 369, 344, 325, 311, 302, 297, 291, 283, 279, 275, 271, 269, 268, 267, 263, 264, 264, 264, 264, 266, 269, 270, 274, 277, 281, 287, 291, 300, 312, 325, 344, 372, 
                393, 364, 337, 322, 310, 300, 294, 288, 281, 277, 273, 271, 268, 266, 265, 262, 263, 261, 263, 264, 266, 268, 269, 273, 277, 281, 284, 288, 297, 307, 318, 338, 363, 
                382, 355, 335, 320, 307, 300, 291, 288, 282, 277, 272, 270, 268, 265, 264, 262, 262, 261, 262, 263, 264, 265, 268, 272, 273, 278, 281, 287, 294, 302, 315, 331, 354, 
                372, 350, 332, 314, 304, 299, 290, 284, 279, 275, 270, 269, 265, 263, 262, 262, 262, 262, 262, 262, 264, 264, 267, 269, 272, 275, 280, 288, 291, 301, 313, 327, 348, 
                370, 344, 326, 314, 302, 299, 290, 284, 279, 273, 270, 269, 264, 264, 262, 261, 261, 262, 262, 261, 262, 264, 265, 268, 271, 277, 281, 285, 291, 297, 310, 323, 340, 
                365, 340, 324, 311, 301, 292, 289, 282, 278, 273, 270, 267, 264, 262, 263, 261, 261, 262, 260, 262, 261, 263, 264, 269, 271, 273, 278, 283, 289, 297, 305, 318, 337, 
                360, 338, 321, 310, 301, 293, 288, 281, 278, 273, 269, 267, 264, 262, 262, 260, 260, 260, 259, 261, 261, 263, 263, 267, 271, 272, 278, 282, 289, 297, 307, 316, 333, 
                356, 336, 318, 309, 299, 292, 286, 280, 275, 271, 269, 265, 264, 262, 262, 260, 259, 261, 260, 261, 261, 262, 263, 264, 269, 272, 278, 282, 288, 293, 302, 315, 329, 
                353, 336, 317, 305, 298, 291, 285, 280, 278, 272, 268, 264, 263, 262, 261, 261, 259, 260, 259, 261, 261, 261, 264, 265, 269, 272, 276, 281, 287, 293, 303, 313, 328, 
                351, 334, 315, 305, 297, 290, 284, 279, 275, 270, 267, 264, 261, 261, 260, 259, 260, 258, 257, 260, 261, 262, 263, 264, 268, 271, 275, 281, 286, 292, 301, 311, 327, 
                349, 334, 314, 303, 297, 289, 286, 279, 273, 271, 268, 265, 263, 261, 260, 259, 259, 257, 258, 260, 260, 262, 263, 265, 268, 270, 274, 280, 287, 290, 299, 310, 327, 
                350, 328, 314, 305, 298, 289, 283, 278, 273, 271, 268, 266, 262, 261, 260, 258, 258, 258, 257, 258, 260, 262, 262, 264, 267, 271, 273, 279, 283, 291, 299, 310, 324, 
                349, 331, 313, 302, 297, 289, 284, 278, 275, 270, 266, 265, 262, 261, 260, 258, 259, 257, 259, 258, 258, 261, 262, 262, 266, 270, 273, 279, 284, 289, 298, 309, 323, 
                347, 327, 313, 303, 295, 289, 281, 278, 272, 270, 264, 264, 263, 261, 258, 258, 257, 257, 257, 259, 258, 259, 260, 262, 266, 270, 272, 279, 284, 291, 298, 306, 322, 
                348, 326, 313, 301, 293, 288, 281, 278, 272, 269, 266, 263, 263, 261, 260, 256, 257, 257, 257, 257, 258, 259, 260, 261, 266, 269, 272, 278, 281, 289, 297, 308, 321, 
                349, 326, 312, 302, 295, 288, 281, 278, 271, 269, 265, 263, 262, 260, 258, 257, 257, 259, 256, 257, 259, 260, 262, 263, 266, 269, 272, 278, 281, 289, 297, 305, 321, 
                346, 327, 312, 302, 296, 288, 284, 276, 271, 269, 266, 263, 263, 259, 258, 257, 258, 256, 256, 257, 260, 260, 261, 262, 264, 270, 272, 276, 281, 289, 295, 308, 319, 
                349, 326, 313, 302, 297, 288, 281, 279, 271, 269, 265, 263, 262, 260, 258, 256, 256, 257, 257, 258, 257, 258, 260, 262, 266, 268, 272, 277, 283, 289, 297, 305, 320, 
                344, 329, 313, 302, 298, 288, 282, 278, 272, 269, 265, 264, 261, 261, 259, 257, 257, 256, 257, 257, 259, 260, 261, 262, 264, 267, 273, 278, 282, 289, 297, 306, 322, 
                346, 329, 313, 302, 297, 288, 282, 277, 273, 270, 264, 264, 262, 260, 259, 257, 257, 257, 256, 257, 257, 260, 261, 263, 265, 269, 273, 278, 281, 289, 297, 309, 325, 
                350, 329, 314, 303, 297, 289, 282, 279, 273, 270, 264, 263, 261, 259, 259, 258, 256, 257, 257, 257, 258, 258, 261, 263, 268, 269, 276, 279, 282, 289, 299, 309, 325, 
                351, 330, 315, 304, 297, 290, 284, 278, 275, 269, 266, 263, 262, 260, 260, 258, 257, 258, 258, 258, 259, 260, 261, 263, 268, 270, 276, 279, 284, 289, 299, 310, 328, 
                354, 335, 320, 305, 297, 291, 285, 279, 275, 269, 266, 263, 262, 260, 260, 258, 258, 258, 257, 260, 260, 261, 262, 263, 266, 270, 277, 279, 284, 291, 300, 312, 329, 
                356, 336, 320, 309, 298, 290, 288, 281, 274, 271, 268, 265, 263, 262, 260, 260, 257, 260, 258, 258, 261, 260, 261, 264, 268, 272, 276, 281, 286, 291, 302, 313, 333, 
                363, 338, 322, 310, 300, 291, 288, 282, 277, 272, 268, 267, 263, 261, 261, 261, 259, 259, 259, 261, 261, 261, 263, 265, 268, 272, 276, 281, 288, 293, 305, 316, 336, 
                367, 342, 325, 312, 302, 293, 289, 282, 279, 272, 268, 265, 263, 263, 262, 261, 261, 260, 260, 261, 261, 262, 264, 266, 271, 273, 279, 282, 291, 296, 308, 321, 338, 
                377, 348, 327, 313, 302, 297, 289, 286, 279, 274, 271, 268, 265, 263, 261, 262, 260, 262, 260, 261, 261, 263, 266, 269, 271, 277, 280, 286, 291, 300, 310, 326, 346, 
                386, 352, 332, 320, 308, 299, 291, 286, 281, 278, 272, 270, 268, 266, 264, 261, 262, 262, 262, 262, 263, 264, 266, 270, 272, 278, 281, 288, 293, 302, 314, 330, 354, 
                390, 360, 337, 321, 310, 300, 295, 289, 283, 278, 274, 270, 268, 265, 264, 263, 263, 262, 262, 263, 265, 268, 270, 272, 275, 280, 284, 289, 297, 307, 319, 337, 366, 
                404, 366, 344, 327, 312, 302, 297, 291, 283, 279, 276, 272, 270, 267, 263, 266, 263, 264, 263, 263, 268, 266, 271, 272, 277, 281, 284, 291, 299, 309, 324, 343, 373
            },
            // GrGain:
            {
                433, 390, 356, 334, 320, 308, 301, 294, 290, 284, 279, 274, 273, 272, 270, 271, 269, 269, 272, 273, 276, 278, 282, 286, 290, 296, 303, 311, 319, 335, 354, 382, 421, 
                418, 380, 350, 329, 316, 307, 298, 292, 286, 283, 278, 274, 271, 270, 268, 268, 268, 268, 270, 271, 274, 277, 279, 281, 287, 291, 298, 307, 317, 329, 347, 374, 406, 
                403, 369, 343, 324, 312, 302, 296, 289, 283, 278, 275, 272, 269, 268, 266, 266, 266, 266, 267, 270, 270, 274, 276, 281, 285, 288, 296, 303, 311, 323, 343, 364, 394, 
                394, 360, 336, 320, 309, 300, 293, 287, 281, 276, 273, 270, 267, 266, 265, 263, 264, 263, 265, 267, 269, 272, 275, 279, 282, 287, 294, 301, 309, 318, 333, 356, 382, 
                381, 353, 330, 315, 305, 297, 293, 286, 279, 273, 272, 268, 265, 263, 263, 262, 261, 263, 264, 266, 268, 270, 272, 275, 279, 284, 291, 298, 307, 315, 329, 346, 372, 
                372, 347, 329, 313, 303, 295, 289, 283, 278, 274, 268, 266, 264, 263, 263, 260, 260, 261, 261, 263, 265, 268, 270, 274, 279, 284, 289, 295, 303, 311, 324, 342, 362, 
                363, 343, 323, 309, 301, 293, 287, 282, 276, 272, 268, 264, 263, 261, 262, 260, 261, 260, 261, 263, 264, 265, 268, 271, 276, 281, 286, 293, 300, 309, 321, 336, 358, 
                360, 337, 321, 308, 298, 292, 285, 280, 275, 270, 267, 263, 261, 260, 260, 260, 259, 259, 260, 261, 263, 265, 267, 271, 275, 280, 286, 291, 296, 307, 318, 331, 353, 
                354, 335, 317, 305, 298, 290, 284, 279, 273, 270, 266, 263, 261, 260, 259, 259, 259, 258, 259, 260, 262, 264, 267, 269, 274, 278, 283, 290, 296, 305, 315, 329, 349, 
                350, 330, 315, 303, 295, 290, 283, 277, 273, 268, 265, 263, 260, 259, 259, 258, 259, 258, 259, 259, 262, 264, 266, 268, 273, 278, 284, 289, 295, 302, 314, 327, 343, 
                345, 329, 314, 303, 294, 287, 283, 277, 273, 267, 264, 261, 260, 260, 259, 258, 258, 259, 258, 260, 261, 263, 264, 267, 270, 276, 281, 286, 294, 302, 311, 323, 340, 
                344, 327, 313, 301, 295, 288, 281, 276, 272, 267, 264, 261, 260, 258, 259, 257, 258, 258, 258, 259, 260, 261, 263, 265, 269, 275, 279, 286, 292, 299, 310, 321, 338, 
                344, 325, 312, 301, 294, 286, 280, 275, 270, 268, 263, 260, 260, 258, 258, 256, 256, 258, 258, 259, 260, 262, 263, 266, 269, 273, 278, 286, 291, 299, 308, 319, 336, 
                342, 324, 311, 301, 291, 286, 280, 275, 270, 268, 263, 262, 260, 258, 257, 256, 256, 256, 258, 259, 260, 261, 263, 266, 270, 274, 280, 286, 291, 299, 308, 318, 336, 
                340, 322, 309, 299, 291, 285, 281, 274, 269, 267, 264, 262, 260, 258, 257, 257, 256, 258, 259, 258, 260, 261, 263, 265, 269, 274, 279, 284, 291, 298, 307, 317, 332, 
                337, 322, 309, 301, 291, 284, 280, 275, 270, 268, 264, 262, 260, 258, 257, 256, 256, 258, 258, 258, 260, 261, 263, 265, 270, 275, 278, 284, 290, 298, 306, 318, 332, 
                337, 322, 308, 300, 291, 284, 279, 274, 269, 265, 263, 261, 259, 259, 256, 256, 256, 256, 258, 258, 260, 262, 263, 264, 269, 275, 276, 284, 290, 296, 307, 316, 330, 
                339, 321, 308, 300, 290, 284, 279, 274, 269, 267, 263, 260, 260, 258, 256, 256, 256, 258, 258, 258, 259, 260, 261, 265, 269, 274, 278, 283, 289, 296, 305, 316, 330, 
                337, 322, 308, 299, 291, 284, 278, 273, 269, 266, 263, 261, 260, 258, 257, 256, 256, 256, 257, 258, 259, 261, 261, 265, 269, 273, 277, 283, 290, 295, 304, 315, 329, 
                338, 321, 308, 298, 291, 284, 278, 273, 269, 266, 261, 262, 260, 259, 256, 256, 256, 256, 256, 258, 260, 260, 262, 264, 268, 272, 276, 283, 290, 296, 305, 316, 329, 
                338, 322, 308, 298, 290, 284, 279, 273, 269, 266, 263, 262, 259, 258, 256, 257, 256, 256, 256, 258, 260, 261, 263, 263, 268, 271, 277, 283, 290, 295, 305, 317, 330, 
                341, 323, 308, 298, 291, 284, 279, 273, 269, 267, 262, 260, 259, 259, 258, 256, 256, 258, 258, 258, 259, 261, 263, 265, 270, 272, 279, 283, 290, 296, 304, 317, 331, 
                341, 322, 310, 301, 291, 285, 278, 273, 269, 266, 263, 262, 259, 259, 258, 257, 257, 258, 259, 258, 260, 262, 264, 265, 269, 274, 279, 284, 290, 297, 307, 317, 332, 
                342, 324, 310, 301, 293, 286, 279, 274, 270, 265, 263, 261, 260, 259, 258, 257, 257, 258, 258, 259, 260, 261, 263, 266, 270, 273, 279, 284, 291, 296, 307, 320, 334, 
                345, 327, 310, 301, 294, 287, 280, 275, 271, 268, 264, 261, 260, 258, 258, 258, 259, 257, 259, 259, 260, 263, 264, 268, 271, 275, 280, 285, 292, 298, 308, 321, 336, 
                345, 328, 314, 302, 294, 289, 282, 276, 271, 268, 265, 262, 261, 259, 259, 258, 259, 258, 258, 260, 260, 262, 264, 268, 271, 276, 280, 285, 292, 298, 309, 322, 338, 
                349, 330, 315, 303, 296, 289, 284, 278, 273, 268, 266, 264, 262, 260, 260, 259, 258, 259, 259, 260, 261, 262, 265, 268, 273, 277, 282, 287, 294, 300, 310, 323, 343, 
                354, 335, 317, 307, 298, 291, 284, 279, 273, 270, 266, 264, 263, 261, 260, 260, 259, 260, 260, 261, 262, 263, 265, 269, 274, 278, 283, 289, 295, 304, 314, 327, 346, 
                359, 338, 322, 309, 300, 292, 286, 281, 276, 273, 268, 264, 264, 262, 261, 261, 261, 261, 261, 263, 263, 264, 267, 269, 275, 280, 285, 290, 298, 306, 316, 331, 353, 
                368, 343, 323, 311, 302, 294, 288, 283, 278, 273, 269, 266, 265, 263, 263, 262, 260, 262, 263, 263, 264, 267, 268, 274, 276, 281, 286, 293, 300, 308, 320, 337, 357, 
                378, 349, 328, 315, 303, 296, 290, 285, 279, 275, 271, 268, 266, 265, 263, 263, 264, 264, 263, 264, 268, 268, 271, 275, 278, 282, 289, 295, 302, 311, 323, 343, 365, 
                384, 354, 334, 317, 308, 301, 293, 287, 282, 278, 273, 270, 268, 267, 265, 265, 264, 264, 265, 267, 268, 270, 273, 277, 280, 286, 290, 297, 306, 315, 328, 347, 373, 
                400, 362, 337, 324, 311, 302, 295, 290, 284, 278, 274, 273, 270, 268, 265, 265, 266, 267, 268, 268, 270, 272, 274, 279, 283, 288, 293, 300, 308, 319, 334, 356, 378
            },
            // GbGain:
            {
                437, 391, 355, 333, 322, 309, 301, 292, 288, 283, 276, 275, 274, 271, 270, 270, 270, 271, 268, 272, 274, 278, 281, 285, 290, 296, 303, 308, 319, 332, 355, 385, 426, 
                423, 380, 348, 330, 316, 305, 298, 292, 286, 281, 276, 273, 272, 270, 268, 269, 267, 267, 269, 270, 273, 275, 278, 283, 287, 292, 299, 307, 315, 329, 346, 373, 406, 
                406, 368, 344, 324, 313, 303, 296, 290, 282, 279, 276, 271, 268, 268, 268, 265, 265, 266, 267, 268, 271, 274, 278, 280, 283, 287, 295, 303, 311, 322, 339, 362, 395, 
                391, 361, 336, 321, 310, 302, 292, 288, 281, 276, 272, 269, 268, 266, 265, 265, 265, 264, 266, 267, 269, 270, 274, 278, 282, 286, 292, 299, 309, 319, 333, 354, 382, 
                382, 353, 332, 317, 305, 297, 290, 284, 279, 275, 270, 268, 265, 264, 262, 261, 262, 263, 264, 265, 267, 268, 271, 276, 280, 285, 291, 298, 304, 316, 329, 347, 370, 
                372, 348, 328, 315, 303, 295, 290, 284, 278, 273, 269, 265, 264, 262, 260, 260, 260, 261, 261, 263, 266, 267, 270, 274, 277, 283, 288, 294, 302, 311, 324, 341, 364, 
                365, 341, 323, 311, 301, 293, 286, 281, 276, 271, 267, 264, 261, 261, 260, 261, 260, 260, 262, 262, 264, 266, 268, 271, 276, 280, 286, 292, 299, 309, 322, 336, 355, 
                360, 338, 321, 309, 299, 292, 286, 280, 275, 270, 267, 264, 261, 260, 259, 259, 260, 259, 260, 261, 262, 264, 267, 270, 275, 279, 285, 290, 299, 305, 318, 331, 351, 
                354, 333, 319, 305, 297, 290, 284, 279, 274, 270, 267, 262, 260, 260, 260, 259, 258, 259, 259, 260, 263, 264, 266, 269, 273, 278, 283, 289, 296, 303, 315, 328, 346, 
                351, 330, 316, 305, 296, 289, 284, 278, 272, 268, 266, 263, 260, 259, 259, 259, 258, 260, 259, 260, 262, 264, 265, 268, 273, 277, 283, 289, 296, 302, 313, 325, 342, 
                348, 329, 315, 303, 297, 290, 282, 278, 272, 268, 265, 263, 260, 259, 259, 258, 259, 258, 259, 259, 261, 262, 263, 268, 271, 276, 281, 286, 292, 300, 310, 323, 339, 
                345, 326, 313, 302, 295, 287, 281, 276, 271, 267, 265, 262, 260, 259, 259, 257, 258, 257, 258, 260, 260, 262, 264, 267, 269, 275, 280, 285, 292, 300, 310, 321, 336, 
                341, 325, 312, 301, 292, 287, 281, 276, 270, 267, 263, 261, 259, 259, 257, 257, 258, 258, 258, 258, 260, 263, 263, 266, 270, 273, 279, 284, 291, 298, 309, 319, 335, 
                344, 324, 310, 302, 292, 286, 280, 276, 270, 267, 264, 260, 260, 259, 258, 257, 256, 257, 258, 259, 259, 260, 264, 265, 270, 274, 279, 285, 290, 297, 307, 318, 336, 
                342, 324, 309, 300, 292, 285, 280, 276, 270, 267, 264, 261, 260, 258, 257, 256, 257, 257, 259, 259, 260, 262, 263, 266, 269, 275, 278, 284, 290, 298, 307, 319, 334, 
                339, 323, 310, 301, 291, 286, 279, 275, 269, 267, 264, 262, 259, 259, 258, 256, 257, 258, 259, 259, 260, 261, 263, 264, 270, 275, 279, 283, 290, 297, 305, 316, 330, 
                339, 323, 309, 299, 291, 285, 279, 274, 270, 266, 263, 261, 260, 258, 257, 256, 257, 257, 259, 258, 260, 260, 263, 263, 270, 274, 279, 284, 290, 297, 306, 316, 330, 
                338, 322, 309, 299, 291, 284, 279, 274, 270, 266, 263, 261, 259, 259, 257, 257, 256, 257, 258, 258, 259, 260, 261, 265, 270, 274, 279, 284, 289, 297, 304, 316, 329, 
                339, 322, 309, 299, 291, 284, 278, 273, 269, 265, 263, 261, 260, 258, 257, 256, 256, 257, 257, 258, 259, 260, 263, 264, 268, 274, 277, 282, 290, 296, 303, 315, 331, 
                337, 323, 309, 299, 292, 284, 280, 274, 269, 265, 263, 261, 260, 258, 257, 256, 257, 257, 257, 258, 259, 261, 263, 264, 267, 273, 278, 282, 290, 296, 303, 314, 330, 
                340, 322, 310, 301, 291, 284, 279, 273, 269, 266, 264, 260, 259, 259, 258, 257, 256, 256, 257, 257, 260, 262, 263, 264, 267, 272, 276, 284, 289, 296, 303, 316, 330, 
                342, 323, 309, 300, 291, 285, 279, 275, 270, 266, 262, 261, 260, 259, 257, 258, 258, 256, 258, 259, 258, 261, 264, 266, 269, 273, 277, 284, 289, 296, 305, 316, 330, 
                342, 324, 310, 301, 291, 285, 280, 274, 271, 266, 263, 261, 260, 259, 258, 257, 257, 259, 259, 260, 261, 261, 263, 266, 270, 273, 278, 284, 290, 297, 305, 317, 331, 
                342, 326, 311, 301, 293, 285, 281, 275, 271, 268, 263, 261, 260, 259, 258, 258, 258, 259, 258, 259, 261, 262, 264, 266, 269, 274, 279, 284, 290, 296, 307, 317, 335, 
                344, 327, 312, 301, 294, 287, 281, 275, 271, 268, 264, 261, 261, 259, 258, 258, 259, 259, 259, 259, 261, 262, 266, 267, 273, 275, 280, 286, 291, 297, 308, 319, 333, 
                347, 329, 314, 303, 296, 289, 283, 277, 273, 268, 264, 263, 261, 260, 259, 259, 258, 259, 260, 260, 262, 263, 265, 266, 272, 276, 280, 287, 292, 299, 308, 322, 337, 
                352, 331, 316, 304, 296, 290, 283, 279, 274, 269, 266, 263, 261, 260, 260, 260, 259, 260, 260, 260, 261, 264, 264, 268, 273, 277, 281, 287, 293, 301, 311, 324, 342, 
                355, 334, 317, 308, 297, 291, 285, 280, 274, 271, 267, 264, 262, 263, 260, 260, 260, 260, 260, 261, 262, 265, 267, 269, 273, 278, 284, 290, 294, 302, 315, 329, 345, 
                360, 338, 322, 309, 300, 293, 287, 282, 277, 273, 269, 265, 264, 263, 262, 261, 261, 261, 261, 263, 264, 264, 268, 270, 275, 279, 285, 292, 298, 305, 316, 332, 349, 
                367, 344, 324, 312, 302, 296, 289, 284, 278, 275, 270, 266, 265, 265, 264, 263, 262, 263, 262, 263, 265, 267, 268, 273, 278, 283, 287, 292, 300, 308, 320, 337, 358, 
                375, 349, 329, 315, 307, 297, 292, 286, 281, 275, 271, 269, 267, 266, 265, 264, 264, 264, 265, 265, 266, 269, 272, 276, 279, 283, 290, 296, 302, 311, 324, 344, 364, 
                390, 356, 333, 320, 309, 302, 293, 288, 281, 279, 273, 270, 268, 266, 266, 265, 266, 266, 267, 266, 269, 271, 273, 278, 282, 287, 291, 297, 305, 314, 328, 348, 376, 
                397, 365, 338, 324, 313, 303, 296, 290, 285, 279, 276, 273, 273, 268, 266, 268, 267, 267, 268, 268, 271, 272, 279, 279, 284, 289, 293, 300, 307, 320, 335, 353, 384
            },
            // BGain:
            {
                419, 382, 345, 322, 312, 298, 295, 288, 278, 277, 273, 271, 268, 268, 265, 264, 265, 263, 266, 265, 265, 268, 273, 275, 276, 279, 288, 293, 302, 313, 333, 362, 393, 
                405, 366, 338, 319, 306, 297, 289, 284, 278, 275, 272, 268, 266, 265, 264, 263, 262, 262, 263, 263, 265, 266, 273, 273, 274, 278, 284, 289, 300, 311, 327, 352, 384, 
                389, 357, 331, 314, 303, 292, 287, 283, 277, 274, 270, 270, 265, 264, 262, 262, 262, 262, 262, 263, 265, 266, 268, 272, 273, 274, 283, 288, 293, 304, 319, 341, 368, 
                378, 349, 327, 311, 298, 290, 287, 283, 276, 271, 269, 265, 264, 262, 262, 261, 262, 261, 262, 262, 263, 265, 265, 270, 272, 275, 279, 285, 291, 302, 316, 332, 358, 
                371, 344, 321, 306, 299, 288, 285, 279, 275, 270, 267, 265, 264, 262, 262, 261, 260, 260, 262, 261, 262, 264, 266, 267, 271, 274, 278, 284, 288, 299, 311, 324, 348, 
                360, 337, 317, 305, 296, 288, 283, 278, 274, 270, 266, 264, 262, 262, 260, 260, 260, 260, 260, 262, 262, 262, 265, 267, 268, 274, 276, 283, 288, 296, 307, 320, 339, 
                353, 333, 315, 303, 296, 288, 282, 277, 273, 270, 265, 264, 262, 258, 261, 260, 261, 260, 260, 260, 262, 262, 262, 266, 267, 271, 274, 279, 286, 294, 303, 317, 336, 
                348, 328, 313, 300, 291, 287, 279, 276, 272, 268, 265, 262, 261, 262, 260, 260, 260, 258, 260, 261, 261, 261, 263, 263, 266, 271, 274, 278, 285, 291, 300, 314, 330, 
                344, 327, 312, 300, 291, 286, 279, 276, 271, 269, 265, 264, 262, 262, 260, 258, 260, 259, 261, 260, 262, 262, 262, 265, 268, 272, 274, 277, 285, 290, 299, 312, 328, 
                341, 322, 307, 296, 290, 284, 281, 275, 271, 268, 265, 262, 262, 261, 259, 259, 260, 260, 260, 260, 261, 261, 262, 263, 266, 270, 273, 277, 285, 288, 298, 310, 323, 
                335, 319, 309, 298, 288, 283, 278, 274, 271, 266, 264, 263, 262, 260, 260, 260, 260, 260, 260, 260, 260, 262, 262, 265, 264, 270, 273, 277, 283, 288, 297, 307, 319, 
                337, 318, 306, 296, 289, 284, 278, 274, 270, 267, 263, 262, 262, 261, 261, 259, 260, 260, 260, 260, 260, 260, 262, 262, 264, 270, 273, 275, 279, 288, 296, 306, 317, 
                336, 317, 303, 296, 288, 283, 277, 274, 271, 268, 264, 264, 262, 261, 259, 259, 259, 259, 260, 260, 260, 261, 262, 263, 263, 267, 273, 274, 279, 286, 293, 304, 316, 
                332, 318, 303, 293, 288, 283, 278, 274, 269, 267, 264, 264, 262, 262, 260, 258, 260, 258, 260, 260, 261, 261, 262, 264, 264, 268, 269, 274, 281, 286, 292, 305, 315, 
                333, 316, 302, 293, 287, 281, 276, 274, 271, 269, 265, 264, 262, 262, 258, 260, 258, 260, 257, 258, 260, 261, 261, 262, 265, 265, 271, 275, 278, 285, 291, 302, 316, 
                332, 316, 302, 292, 287, 282, 276, 272, 268, 264, 264, 262, 262, 262, 260, 261, 260, 261, 260, 260, 258, 261, 262, 262, 264, 266, 267, 274, 278, 286, 290, 302, 315, 
                330, 314, 303, 293, 287, 283, 276, 274, 270, 266, 264, 264, 263, 262, 260, 258, 258, 259, 260, 260, 260, 260, 259, 262, 264, 266, 270, 274, 277, 284, 290, 303, 314, 
                331, 313, 300, 291, 288, 281, 275, 272, 267, 265, 264, 262, 262, 261, 257, 260, 258, 260, 261, 260, 260, 260, 260, 262, 264, 266, 268, 273, 278, 284, 290, 301, 313, 
                330, 314, 301, 292, 286, 281, 275, 272, 266, 265, 263, 262, 263, 261, 258, 259, 258, 258, 259, 259, 258, 260, 260, 262, 262, 265, 267, 271, 277, 282, 289, 300, 310, 
                333, 314, 300, 291, 286, 282, 275, 273, 267, 266, 264, 263, 262, 262, 260, 258, 260, 258, 259, 260, 260, 260, 260, 261, 263, 265, 266, 272, 277, 285, 289, 300, 314, 
                331, 313, 301, 292, 287, 279, 275, 271, 266, 265, 263, 262, 262, 260, 256, 259, 256, 257, 256, 260, 258, 260, 261, 261, 263, 265, 266, 274, 276, 283, 289, 300, 312, 
                333, 315, 303, 291, 287, 281, 275, 272, 267, 265, 263, 264, 262, 261, 261, 259, 256, 257, 260, 258, 260, 260, 261, 262, 263, 265, 270, 274, 278, 283, 290, 302, 313, 
                331, 315, 302, 291, 287, 283, 276, 271, 268, 266, 264, 262, 262, 261, 259, 257, 258, 260, 258, 256, 258, 261, 261, 262, 263, 266, 268, 273, 277, 284, 288, 302, 316, 
                336, 316, 302, 295, 288, 280, 275, 273, 269, 265, 263, 262, 262, 261, 261, 258, 258, 258, 258, 257, 258, 260, 262, 263, 263, 265, 270, 273, 278, 284, 291, 302, 317, 
                336, 317, 303, 296, 287, 283, 276, 273, 269, 265, 264, 262, 261, 260, 260, 259, 260, 258, 258, 258, 260, 262, 262, 262, 264, 267, 270, 274, 278, 283, 291, 305, 319, 
                339, 319, 304, 296, 288, 284, 278, 274, 270, 265, 265, 262, 263, 261, 259, 261, 260, 260, 260, 258, 260, 261, 262, 262, 265, 265, 272, 275, 278, 286, 292, 304, 319, 
                338, 320, 306, 298, 288, 283, 281, 274, 271, 267, 265, 264, 263, 261, 260, 260, 260, 260, 259, 260, 260, 260, 261, 262, 265, 266, 272, 276, 279, 287, 296, 307, 322, 
                343, 323, 310, 300, 289, 285, 279, 275, 271, 268, 264, 264, 262, 261, 260, 260, 259, 260, 257, 260, 260, 259, 260, 265, 265, 268, 273, 277, 279, 288, 297, 308, 330, 
                347, 328, 312, 301, 291, 285, 283, 276, 272, 269, 264, 264, 263, 263, 261, 260, 260, 259, 258, 260, 261, 262, 262, 263, 265, 268, 274, 278, 286, 289, 300, 314, 331, 
                357, 331, 314, 303, 292, 288, 281, 278, 274, 268, 266, 265, 262, 262, 262, 262, 262, 261, 260, 261, 260, 262, 263, 264, 266, 271, 274, 278, 285, 292, 303, 317, 337, 
                362, 337, 318, 306, 297, 289, 283, 279, 274, 269, 268, 264, 264, 262, 261, 260, 262, 260, 261, 260, 262, 262, 264, 265, 269, 272, 274, 280, 288, 294, 305, 326, 344, 
                372, 344, 322, 309, 299, 288, 285, 279, 275, 271, 269, 266, 265, 262, 263, 261, 261, 261, 262, 262, 262, 264, 265, 266, 272, 274, 277, 283, 288, 300, 311, 330, 354, 
                382, 350, 329, 314, 299, 295, 288, 281, 276, 273, 271, 267, 264, 262, 262, 262, 262, 262, 262, 264, 263, 263, 265, 271, 273, 275, 278, 288, 291, 300, 315, 333, 361
            },
        },
    },

    /* ISP_BNR_LSC_CALIB_TABLE_S */
    {
        // RGain
        {
            4112, 4104, 4096, 4104, 4120, 4112, 4112, 4137, 4145, 4145, 
            4162, 4162, 4179, 4170, 4170, 4196, 4196, 4187, 4205, 4213, 
            4205, 4231, 4239, 4248, 4257, 4266, 4275, 4266, 4284, 4293, 
            4320, 4320, 4347, 4329, 4338, 4347, 4366, 4384, 4366, 4384, 
            4422, 4403, 4432, 4441, 4441, 4461, 4480, 4432, 4490, 4480, 
            4500, 4520, 4510, 4560, 4570, 4580, 4601, 4590, 4580, 4601, 
            4611, 4632, 4611, 4653, 4685, 4674, 4706, 4728, 4728, 4761, 
            4728, 4685, 4761, 4805, 4839, 4817, 4828, 4817, 4839, 4874, 
            4874, 4932, 4921, 4992, 4992, 4980, 4968, 5042, 5054, 5104, 
            5066, 5079, 5169, 5117, 5195, 5208, 5221, 5302, 5234, 5275, 
            5371, 5400, 5414, 5414, 5443, 5414, 5591, 5531, 5622, 5668, 
            5684, 5684, 5716, 5764, 5813, 5930, 5930, 5982, 6053, 6089, 
            6144, 6125, 6275, 6372, 6372, 6453, 6473, 6577, 6556 
        },
        // GrGain
        {
            4096, 4096, 4096, 4105, 4119, 4128, 4123, 4142, 4137, 4147, 
            4166, 4170, 4166, 4170, 4161, 4170, 4185, 4175, 4204, 4209, 
            4209, 4233, 4233, 4248, 4248, 4258, 4288, 4303, 4298, 4314, 
            4314, 4350, 4344, 4365, 4365, 4371, 4381, 4408, 4397, 4402, 
            4429, 4440, 4467, 4451, 4478, 4494, 4511, 4506, 4517, 4545, 
            4556, 4573, 4568, 4602, 4585, 4614, 4626, 4626, 4632, 4602, 
            4643, 4697, 4685, 4734, 4715, 4709, 4784, 4740, 4759, 4796, 
            4790, 4867, 4841, 4854, 4847, 4847, 4860, 4899, 4899, 4932, 
            4953, 4932, 4973, 4993, 5014, 5007, 5063, 5091, 5063, 5120, 
            5170, 5163, 5163, 5185, 5245, 5245, 5275, 5329, 5306, 5384, 
            5392, 5400, 5449, 5481, 5506, 5531, 5582, 5574, 5643, 5678, 
            5696, 5749, 5777, 5842, 5898, 5917, 5956, 5976, 6106, 6085, 
            6168, 6231, 6285, 6373, 6362, 6429, 6463, 6580, 6676 
        },
        // GbGain
        {
            4096, 4109, 4123, 4105, 4133, 4128, 4133, 4137, 4151, 4161, 
            4161, 4161, 4170, 4175, 4180, 4185, 4204, 4204, 4209, 4218, 
            4223, 4243, 4248, 4253, 4273, 4278, 4303, 4308, 4318, 4323, 
            4313, 4328, 4359, 4370, 4380, 4385, 4385, 4396, 4428, 4433, 
            4433, 4433, 4466, 4482, 4477, 4488, 4521, 4515, 4538, 4538, 
            4538, 4543, 4572, 4577, 4606, 4595, 4624, 4630, 4653, 4665, 
            4665, 4683, 4689, 4695, 4689, 4756, 4737, 4719, 4775, 4775, 
            4812, 4806, 4819, 4851, 4890, 4864, 4903, 4909, 4890, 4962, 
            4956, 4976, 5003, 5024, 5024, 5066, 5031, 5108, 5094, 5130, 
            5108, 5173, 5188, 5203, 5262, 5293, 5285, 5293, 5371, 5394, 
            5394, 5402, 5434, 5500, 5575, 5533, 5575, 5653, 5679, 5670, 
            5751, 5742, 5760, 5833, 5852, 5899, 5947, 5976, 6065, 6137, 
            6147, 6284, 6295, 6284, 6405, 6439, 6555, 6602, 6674 
        },
        // BGain
        {
            4096, 4117, 4106, 4140, 4140, 4140, 4151, 4128, 4140, 4162, 
            4151, 4162, 4173, 4162, 4162, 4162, 4173, 4185, 4185, 4185, 
            4196, 4219, 4207, 4207, 4207, 4231, 4219, 4219, 4242, 4254, 
            4266, 4266, 4289, 4289, 4289, 4266, 4289, 4326, 4326, 4301, 
            4338, 4350, 4338, 4350, 4400, 4387, 4400, 4412, 4387, 4400, 
            4425, 4425, 4451, 4425, 4477, 4464, 4451, 4516, 4464, 4516, 
            4503, 4529, 4516, 4570, 4597, 4529, 4570, 4583, 4583, 4624, 
            4624, 4638, 4624, 4638, 4652, 4724, 4709, 4738, 4709, 4724, 
            4753, 4768, 4709, 4812, 4812, 4827, 4827, 4858, 4920, 4904, 
            4920, 4889, 4952, 4968, 5032, 5016, 5049, 5099, 5150, 5099, 
            5133, 5150, 5185, 5220, 5292, 5310, 5347, 5347, 5403, 5384, 
            5442, 5422, 5539, 5559, 5580, 5704, 5704, 5704, 5768, 5833, 
            5855, 6039, 5969, 6063, 6063, 6185, 6235, 6364, 6260 
        },
    },

};

static const ISP_CMOS_CLUT_S g_stIspCLUT = {
    1,
    512,
    512,
    512,

    {
        {
            0,    3149813,    1046533,    3149814,    6299621,    9450452,    6299622,    9450451,   12602304,
            16802729,   12602303,   16803752,   22052752,   26255221,   21005198,   25206643,   30457689,   35708733,
            29409112,   32563005,   39910177,   45161223,   35714854,   38866705,   49362669,   54612692,   42017535,
            45168367,   60912311,   68261528,   48319196,   52519622,   75610743,    3149814,   57769646,    4198390,
            2095110,    9451475,    3143687,    9451474,    6299621,   15755175,    6300644,   14706598,   12603326,
            23110515,   11554749,   21012342,   19956621,   29416257,   17859470,   25219913,   26263385,   32572189,
            23116638,   26276652,   31519533,   34675465,   26273592,   25232160,   33624849,   37828337,   26279717,
            24187669,   35727104,    5246965,   24184604,    6295538,   39930592,    9451473,   25238283,    9451472,
            4192261,   13658024,    6290435,   11559850,    7349219,   17865595,    7349218,   14716804,   11554749,
            19973973,   10506174,   14727012,   15761298,   18932542,   13663127,   11587410,   18920295,   15788854,
            14722931,    7395148,   19978055,   12645170,   13681497,    2153291,   17884985,    8393711,    9491278,
            9443307,   14741301,    9451472,    4249419,    8402896,   11597614,    9461678, 1072749387,    7363507,
            7341055,   10520463,   10487801,    6323098,    8398816,    8430453,    9447390,    2134918,    9456575,
            4241254,    8408001, 1070637947,   10515358, 1071693666,    7367590, 1063299959,    9475969, 1065403234,
            4229007, 1054911353,    6336364,   11541479,      39808,   12591075,    1097571,    8402896, 1067493240,
            8402896, 1068548962,    5264313, 1059105655,    3166143, 1061208932,    2125734, 1050717050, 1071670194,
            12586995, 1070629783,   14685164, 1064333224,    9448411, 1063292815,   10496985, 1054899107,    7358404,
            1053856653,    6308808, 1045462946,    4219823, 1044420494,    1071032, 1034977187, 1072723870,   12592094,
            1068525484,   12593114, 1066436498,    7354321, 1060140965,    6304722, 1059099533,    2115526, 1050704802,
            16333, 1049663373, 1067471805, 1040220066, 1063274441, 1040226191, 1058037688, 1029734309, 1052790727,
            15735781, 1047553974,   15737822, 1040208840,   10498007, 1037068214,    9449430, 1027625931,    4210635,
            1025534905,    3161039, 1015043022, 1071665089,   11545558, 1068516298,    9449426, 1063279546,    5256147,
            1058032584,    4207572, 1052795830, 1071658963, 1046499271, 1069560794, 1042311094, 1059077076, 1033917385,
            1055929311, 1030777783, 1046495190, 1021334477, 1041248229, 1019243450, 1032863706, 1008751568, 1025519596,
            14690264, 1019232223,   11546577, 1010838515,    8400852, 1005600740,    6303699,  996157434,    2111443,
            6304718,    1061847,    3160010, 1065368531,    2109398, 1062220764,    1060823, 1052786645, 1067461600,
            1048588258, 1065362407, 1040203736, 1051731946, 1033908201, 1047534581, 1026572253, 1034952692, 1018178543,
            1029705730, 1012940770, 1019223038, 1003498487, 1011877903,  998260711, 1002443783,  987768830,  994050075,
            8402891,  974131202,    4209605,  946862085,    4207569,      15302,    2110416, 1071641611,    1060827,
            11225,      11232,    2102257, 1059071973, 1063264237, 1056972782,    8402898, 1043342319, 1043336192,
            1038096380,   16801708, 1026564089, 1023410193, 1020267529,   26254200, 1010832386, 1005581344, 1002439701,
            36754246,  985665539,  986704943,  985660448,   45154078,  961547264,  966778940,  931132416,   55650040,
            17343, 1070593036, 1068492823, 1073739785,      13263,    2102257,       2046,    3151855,       9188,
            8401877,    5252066,    8403918, 1053825015,   15751092,   12602304,   15756196, 1033896968,   27300735,
            21003156,   22060919, 1015019545,   40949569,   31504222,   26263385,  996143144,   54595340,   40953649,
            28366660,  977266741,   67192538,   50402060,   32567088,  899670016, 1072690186,   59850468,    2096132,
            1067443224,    3151856, 1071638548,    3151853, 1072694271,    8402896,    1050621,    7355341,    5252067,
            16803749,    5253088,   10511275,   11551685,   25207666,   11555770,   12617612,   19951519,   31509326,
            18908045,   12624758,   34649951,   36760369,   24162150,   12628840,   47248165,   43059989,   27316045,
            11583326,   60893939,    1046535,   30466874,    5244924,   73491137,    3151854,   33618724,    4202471,
            1069541398,    8403917,    1044494,    4209616,          0,   12609447,    2100217,    4216760,    5253089,
            17863553,    5254110,    3174308,   12603324,   19968871,    8409020,      33686,   21006220,   21022550,
            11564955, 1069584269,   28358495,   21026632,   12621696, 1065392006,   34659134,    3145728,   12626799,
            8392690,   39910180,    4201450,   11582307,    5252067,   47258373,    6306766,   10536792,    2111445,
            1072688146,    7364529,    6289414, 1071663047,    1050619,    7371672,    4199410, 1066424253,    5253087,
            6329222,    4205532, 1060135861,   10507194,    4235131,    4212676, 1052797872,   15761299,    1092466,
            3171246, 1045458861,   18916210,    6294519,    1079197,    9443304,   19970910,    5251045, 1071679377,
            4203489,   21024591,    3160018, 1067488137, 1072705499,   22077248,    1068992, 1062247300, 1064318935,
            3142667, 1071670193,    9438202, 1055932372,    3149814, 1066431398,    6297579, 1046496211,    5254109,
            1061190559,    3156956, 1037060051,    6310847, 1054901146,      16334, 1026575315,    7368612,    9442285,
            1068519362,    7347165,    7374734,    5252066, 1063279544,    3154911,    5282688,    1061848, 1056991154,
            1069557731,    2140022, 1068515279, 1049653166, 1058023398, 1072738159, 1061178312, 1042314156, 1045440491,
            8387584, 1053840324,   11538412, 1032857583,    6296558, 1045452737,    7347172, 1020274676,    4205532,
            1036017600,    2108382, 1007690746,    2114504,    8395747, 1068512217,    3154899, 1072716728,    4203488,
            1060125653,    1057757, 1069575083, 1071655903, 1051739091, 1067458538, 1064335266, 1061171167, 1042302930,
            1051727861, 1058045852, 1050686431, 1031817171, 1035996161, 1052805016, 1040200673, 1022381012, 1020266508,
            11537395, 1028667364,    9444317, 1004535830,    7347175, 1017133030,    5251038,  963636228,    3156957,
            5251032,    1058785, 1064295459, 1071659987,    2106334, 1064314852, 1070592014, 1064323019, 1068508134,
            1051731944,    2100215, 1056985030, 1054875630, 1039149037,    9448410, 1049647042, 1041243126, 1026566130,
            20996013, 1041259457, 1026562045, 1013982199,   33592188, 1031823296, 1012928517, 1001399292,   46187343,
            11539429,  988809218,    4203471,   58781478,    6299617,      10190,    2106328, 1067442205,    1058783,
            9181,       9188, 1071641610, 1066414047, 1065360366, 1059068912,    2102258, 1055929311, 1047531517,
            1043338235,    9451474, 1045443552, 1030751244, 1027607558,   16801708, 1033910242, 1015019546, 1011876881,
            25200521, 1023424485,  997191719,  998243355,   32549738, 1011890152,  980412467,  950002688,   39896909,
            7348182, 1063245862, 1061146670, 1070589974,    4203483, 1069543440, 1067443224, 1073740805,       9186,
            1050619, 1073740803,    2103278, 1061168106,    9447392,    5250026,    6305745, 1047535602,   22043568,
            14697413,   10509236, 1033903098,   37787511,   27293589,   14710683, 1019220993,   53530435,   39889765,
            16813958,  999296002,   69272339,   52484923,   19964786,  977273856, 1065344032,   65078035,    1044493,
            10184, 1071641612, 1064293415,    1050621,       9173,    2101236, 1069542420,    1055723,       9190,
            9450453,       1023,    2110422, 1056970741,   18898860,    5252067,    3165122, 1039140868,   29396866,
            13650879,    3170225, 1023409171,   39892828,   21001114,    2126754, 1005581344,   49339194,   28350329,
            1082261,  988802093, 1068491802,   35699547,    5240834,  920635392, 1072691207,   43046719,    2101238,
            1059048498,    2103280, 1069539358,       8169, 1066394651,    8402896, 1071640589, 1071656925, 1072692229,
            14704559,       3066, 1068514257,    5249007,   19955601,    4204512, 1064324039,   14695371,   25205624,
            8408002, 1061181375,   30439316,   29407072,   12609447, 1056989111,   46183260, 1072688145,   15762320,
            6293494,   60877610,          1,   18913148,    3150831,   76618492,    2104300,   22065001, 1072701418,
            1063244842,    5257171,    1042452, 1066412005, 1068492822,    7361467,    1046533, 1059074016, 1072693249,
            8416166,    1052661, 1052783581,    5251046,    9469844,    2107360, 1045445594,   14698433,   10523524,
            3162060, 1038106584,   24147862,    3142664,    3168185,    6294505,   34644847,    1051642,    2124713,
            2103273,   44092235,    1055722,    2128796, 1070603243,   53538601,      13273,    1083279, 1061167085,
            1066392610, 1072710601,    6288392, 1050681328, 1070590993, 1070618556,    3146748, 1040195571,          0,
            1068524464,    1054704, 1030758390,    5253089, 1066430374, 1072703459, 1020272633,   11553728,    5243900,
            1069561815,    3150812,   16805792,    2101235, 1066419148,    1055716,   22056836, 1072701417, 1063276483,
            1068506093,   27305836, 1068510177, 1059085243, 1054873590,   32555860, 1064318937, 1054894004, 1042288639,
            1071637529, 1059078098,    9437177, 1028655112, 1073738762, 1052788685,    4197363, 1015021585,    1051640,
            1047547848,    1054701,  981459971,    3155936,    6294511, 1069556711, 1054849090,    6309830,    3150828,
            1063267298, 1063243820,    8413104, 1071652843, 1055929311, 1070589975,    9467805, 1063265257, 1049638876,
            5244924,   10521484, 1054877672, 1042300889,   17837015,   11574140, 1046490088, 1034961879,   33577899,
            3140623, 1038102504,    7342057,   48270206,    3144705, 1029713897,    4199401,   64010067,    1053682,
            4198370,    1055722, 1059046454,      10209,    2103271, 1065361388, 1065343012,      15313, 1069554668,
            1055924207, 1072689168, 1071665090, 1058020338, 1045438449,    5245942, 1069570998, 1046484984, 1036001268,
            14692311, 1067477931, 1034949630, 1025515512,   25187252, 1064335266, 1022365700, 1015029755,   35683216,
            8386561, 1003488257,    3149785,   46178158,    4196343,       6101,    2103263, 1064292394,    1054702,
            7137,       7145, 1068491802, 1070605285, 1067457518, 1062213618, 1072690186, 1066414045, 1052775419,
            1048581115,    3150835, 1061174229, 1037042695, 1034947588,    9449432, 1055933391, 1023409171, 1022362637,
            15748030, 1050692554, 1008727071, 1008730134,   22046628, 1044403142,  994044971,  969923584,   29393802,
            8389617, 1052750919, 1050652748, 1068489759,    4198382, 1061145649, 1059046455, 1070590994,    1055723,
            1070587931, 1067441185, 1072692227, 1067458538,    5243903,    2093066,    1053681, 1059070952,   19934168,
            11540459,    3156958, 1050683368,   36724647,   25183170,    6307786, 1042295784,   54563701,   40924053,
            8411064, 1033908200,   72402757,   56664936,   11561894, 1024472041, 1056948284,   71356221, 1073735699,
            6294497, 1064293416, 1055898688, 1073739784,    3150820, 1071639571, 1062195245, 1071646717,       7146,
            5245945, 1068491802, 1071650801, 1063263215,   16789463,    2096131, 1070605285, 1051727861,   29382575,
            9445351, 1069560793, 1040193531,   41976711,   19940293, 1068516301, 1028657153,   55618400,   30435234,
            1067470786, 1011877890, 1061145648,   40930175,    4191236,  994050048, 1067441183,   51425117,    1049598,
            5073, 1072689165, 1061144627, 1071648760,       6107,    4198388, 1066392609, 1067456498,       8168,
            12595159, 1070590995, 1063264237, 1060116468,   20991928,    1049599, 1059071975, 1045433345,   29389722,
            6299622, 1054879714, 1029701645,   37786492,   12599243, 1049637854, 1016068121, 1066391589,   18897841,
            5242869, 1001386021, 1069541398,   25196439,    2100212,  941603840, 1072691206,   32543613, 1070601204,
            1047504978,    2102258, 1067439142, 1063261173, 1056948284,    6302683, 1069540377, 1055922165, 1065343014,
            11552708, 1071641611, 1047533558,    1043470,   15753134,       3067, 1040194552,   11539437,   19953560,
            2105319, 1032854521,   28328896, 1071637529,    5257172,    2099173,   46167950, 1072689165,    7359425,
            1052650,   64007005, 1071644672,   10510255, 1069553649,   81846061, 1072699377,   12612509, 1059066871,
            1052750918,      10209,    1041432, 1048580094, 1061144626,    1063889, 1073737742, 1037043717, 1068490782,
            2116546, 1073740803, 1025508365,    2095111,    2120628, 1071648759,  999285763,   10492905,    3141644,
            1070604267, 1043305572,   22037443,    1047555, 1069558751, 1054846030,   35680155, 1071647738, 1069562835,
            1065337910,   48273267, 1069553649, 1067468744,    4186139,   61914957, 1066410985, 1066424253,   17826810,
            1059045433, 1064315872,    5238791,   34614226, 1064293416, 1061173208,    3144705,   52451240, 1069541399,
            1059079120,       2043,   70289276,    1048577,    5241852, 1069552629, 1049601108,    8396774,    1050617,
            1065360367, 1059043393,   16793544, 1070600182, 1061168106, 1067438124,   25191337, 1065359347, 1056975845,
            4188181,   33588107, 1059068913, 1051735008,   13633528,   41984877, 1053827055, 1047541723,   27274199,
            1064292397, 1047536621,    7338997,   39866291, 1068490781, 1041246187,    3147764,   54555535, 1071640591,
            4195309,       4084, 1055897668,          0,    1052655, 1066406900, 1062193204,    4202470, 1070601203,
            1059067893, 1069537315,    9452495, 1061164022, 1051727862,    3141647,   13652921, 1051726842, 1044388855,
            9440247,   17853347, 1042289662, 1036000248,   18884572,   22053773, 1032850434, 1028660218,   28328896,
            1070586911, 1018168321,    4194275,   37774244, 1071639571,       2013,    1051623, 1062193205, 1072691207,
            5093,       6125, 1066390567, 1072696313, 1069553647, 1064309748, 1070588953,       8169, 1056969721,
            1053823995,    1045513,    1061849, 1044383747, 1042286594,    5245942,    1065930, 1031798797, 1031799817,
            9446370,    2118587, 1020262423, 1020264465,   15743949,    3171245, 1007677474,  988796928,   20991929,
            3139600, 1040157805, 1038059632, 1068488740,    2094087, 1052746836, 1048551513, 1069540378, 1072694271,
            1065335867, 1060091970, 1070592015, 1070600182,    4185118, 1071632425, 1072692228, 1068506093,   19923963,
            11528202, 1072697335, 1065363428,   38809552,   26220519,    1056745, 1063269340,   58743714,   43008957,
            2109404, 1060125652,   78679922,   61894546,    4209614, 1056982988, 1046453340,   79731558,    1042451,
            6289406, 1056945223, 1045404766, 1072689164,    3146747, 1066387505, 1053798475, 1071643654,       3064,
            4187160, 1063240759, 1068500991, 1068504053,   15730681, 1072683041, 1066405881, 1062213618,   30419925,
            9433094, 1065359346, 1055923184,   46158765,   19929064, 1063264235, 1050682350,   61897605,   33569733,
            1061170148, 1044391916, 1052748876,   47211425,    4191232, 1038101483, 1060094010,   60852093,    2097150,
            6291436, 1068487720, 1052748877, 1070598141,    2099181,    3140625, 1059045436, 1065356284,       5105,
            11536375, 1065340972, 1060114427, 1065358324,   23078873, 1072686105, 1054872570, 1056969720,   34622394,
            6289411, 1049629690, 1047532540,   46164889,   14686186, 1044387833, 1038093312, 1059045436,   23082958,
            3144685, 1025509377, 1064291373,   32527282,    1050608, 1011874816, 1069539358,   41972629, 1070601205,
            986,    2093068, 1060094011, 1062211577,       4064,    7343094, 1064291374, 1053822974,       7146,
            14689247, 1068489760, 1045432323, 1063262196,   22036423, 1072688145, 1037042697, 1050677246,   29383598,
            2097152, 1016062978, 1038091272, 1065340973,    7346156, 1031761034, 1026554898, 1067441185,   12595160,
            1045398641, 1013969949, 1070589972,   17843139, 1061134422,  963622912, 1073739782,   24140718,    3128377,
            1033863288,    2101239, 1067438121,   19913753, 1046452321,    5251046, 1068489759,   37749748, 1059041352,
            9450453, 1070589973,   57682892, 1071631405,   12601283, 1071641610,   78665634,   12575756, 1071636508,
            1071646718, 1039107189,   29366246, 1071639571,       6128, 1050646624,   48251833, 1071641611,    1058787,
            1063234633,   68187018, 1069547521,    3158997,    2081841,   88123226, 1069551608,    5260231,   16769045,
            1041208423, 1069554669,    2090006,   30409717, 1051699282, 1069557731, 1073736720,   46147539, 1061141565,
            1069560793, 1072690185,   62933935, 1071633445,    3141641, 1069547523, 1046452320,   10480648,    1046534,
            1067453436, 1055893582,   23074791, 1070596098, 1065358325, 1065335868,   38813633, 1067452414, 1064311790,
            1036327,   54552474, 1063260154, 1062216679,   12576784,   70292337, 1060115446, 1060122592,   22022134,
            1048552533, 1055923186,    5237761,   34612186, 1056946243, 1052778479,    3144703,   46153662, 1064290353,
            4193270,       2046, 1053797452, 1072685085,    1050615, 1068502013, 1061141565,    7336964, 1070599161,
            1063259131, 1067437102,   17831913, 1064308730, 1058017275, 1073732638,   28325834, 1056968700, 1052775418,
            7335948,   39869353, 1050677247, 1047532538,   14682104,   51411849, 1043336193, 1042290681,   22028258,
            1055897668, 1032848385,    3142636,   30421964, 1061144629,    1047523,    1049582, 1062192183, 1067439142,
            3049,       4082, 1065340972, 1072687125, 1071650800, 1066405879, 1068489761,    5241857, 1061164023,
            1058017275, 1072687125,   10491883, 1050676223, 1049626624,    3143688,   17839059, 1040188424, 1041236998,
            6293497,   25185210, 1030749200, 1031799820,   10491882,   32532386, 1020262425, 1008720896,   14690267,
            1063241778, 1027563668, 1024417942, 1069538337, 1066390567, 1043299449, 1038055549, 1070588954, 1069540379,
            1060083805, 1052741732, 1070590995, 1071640589,    3126334, 1068477512, 1070593036,          0,   22009883,
            11521066, 1071643652,    3151854,   41944052,   29352965, 1070599163,    7351261,   63974344,   48240608,
            1071649779,   10501068,   86006683,   68173751, 1072700395,   14700475, 1034909824,   88107916,    2092043,
            1071635488, 1048547432, 1032812672,    1045513, 1071637527, 1062185040, 1045400682, 1071642630, 1071640591,
            3129397, 1056941141, 1068498947, 1070595078,   17817623, 1069529149, 1065354241, 1069549565,   34604021,
            9425955, 1062210558, 1069552627,   52438991,   23063556, 1059065852, 1069555688,   70274985,   37754852,
            1056968698, 1069558750, 1043303531,   54540225,    2094068, 1069561812, 1053794391,   70279069,    1049590,
            4189195, 1064285250, 1042255977, 1072696313,    2094087,    2083884, 1051697239, 1066404859, 1073740804,
            14672914, 1060090949, 1060113406, 1068499968,   26216438, 1070581810, 1053820929, 1065356284,   39855063,
            6282268, 1047528453, 1062212600,   54544310,   16773123, 1033890817, 1058019316, 1050649686,   28316649,
            1018119345, 1054874608, 1057993798,   40907724, 1037000852, 1050682349, 1066386485,   52449199, 1055881335,
            4191222,    1038371, 1050650707,    2070616,    3145719,    9432078, 1057993797,   22001719,       3064,
            18876407, 1064289334,   42981395, 1067453434,   28319710, 1070584870,   65012717, 1061163003,   38812613,
            4187157,   88090564, 1053822973, 1057994817,   11532289, 1027563671, 1046481920, 1063240757,   17830893,
            1043297407, 1038091265, 1068487720,   26225623, 1059032166, 1027604480, 1073734681,   34619329,    1025100,
            1046497,    5239818, 1060094012,   17809456,        998,   10487800, 1063241777,   35643409,       5101,
            15735782, 1067439143,   52429808, 1066406900,   23080916, 1070587931,   71312334, 1055920123, 1065340972,
            1044494, 1037006973, 1045432323, 1067440163,    4193280, 1049594985, 1034944524, 1069540378,    8392690,
            1061134421, 1025506325, 1071639568,   12591075,    1029183,  986691584, 1073739782,   16789460,   13618216,
            1019172002,    1051642, 1069537317,   28304398, 1034907783,    4200431, 1069539358,   40895475, 1051691115,
            6300643, 1070589975,   55582679, 1068475470, 1073734678, 1070592016, 1046451300,   12568621, 1072688146,
            1071642632, 1054843988,   32498694, 1071641613, 1070596096, 1064285251,   52434910, 1069545480, 1071648759,
            1073726514,   74466226, 1067450370, 1071650799,    9426975,   97547140, 1066404861, 1072702439,   19917835,
            1028615307, 1065357304,    3139597,   29361142, 1042252916, 1064310770,    2093066,   39853024, 1054840924,
            3141632, 1073739783, 1054847050, 1069528131,    2097151, 1070595077, 1061141566,   10473510, 1071645695,
            1066401794, 1067436082,   26208261, 1067452415, 1063258111, 1072682021,   42997730, 1062209535, 1061161981,
            5235735,   60832700, 1058015232, 1058017275,   12578824,   79717269, 1053820929, 1054872569,   17826809,
            1038058612, 1047528448,    3141620,   25170921, 1048549473,    1046505,    2096117, 1064291376, 1059040333,
            2029,       2039, 1067439144, 1069531192, 1072698354, 1069550586, 1069538336,    8378400, 1065357303,
            1063259132, 1072686104,   19918851, 1056968701, 1056966656,    1044495,   33559526, 1049625603, 1050674179,
            4192261,   47200199, 1041235978, 1044382727,    6293500,   61888422, 1033894929, 1027597312,    9441266,
            1046453342, 1013921981, 1009727679, 1073734678, 1054846030, 1033852063, 1027559586, 1072688146, 1062190142,
            1054830720, 1046441094, 1071640591, 1070582828,    2068574, 1065322600, 1071641611,    5234713,   24096827,
            11511880, 1070594055,   13628418,   47174676,   32491558, 1069547523,   23073771,   71303147,   54520832,
            1068500991,   33566674,   95431615,   76551128, 1068502012,   44058552, 1023365284,   98581424,    2093052,
            1055896647, 1040148617, 1020220579,    1047548, 1060094011, 1056932975, 1035954315,       2045, 1065339950,
            1024082, 1050640499, 1069549566, 1070586913,   19905587, 1066375257, 1065355263,    2092050,   39836690,
            9417790, 1062208512,    7339009,   58721262,   26202144, 1058014211,   13636591,   79701961,   45083648,
            1050670081,   19933149, 1032809610,   61871071, 1005526231,   26228683, 1046446196,   80753596, 1028602040,
            1065339952, 1060083805, 1030713479, 1050629272, 1066390568,    1027141, 1043301491, 1073706103, 1068489759,
            15714348, 1055889503,   24088661, 1070589973,   31449104, 1067428938,   48215089, 1072690187,   47186929,
            7323700,   73390091,          0,   63971282,   20961307,   98566116,    3149813, 1041205360,   34598912,
            1016020153,    5250025, 1052743775,   48238565, 1034900638,    8399837, 1063234636,   62925769, 1054829699,
            1073734681, 1073724473, 1041206380, 1073710183, 1072687124,   11522084, 1050647644,   19898442, 1071640591,
            24111117, 1060088908,   39828523, 1070593034,   35652597, 1069530171,   60808203, 1069546501,   48241628,
            5229609,   82837482, 1067451392, 1050648663,   14671894, 1027562650, 1066404858, 1057992777,   25162752,
            1042247812, 1065358325, 1065335867,   34607083, 1057981550, 1064311792, 1073728556,   46146517, 1073715286,
            3140608,    7330843, 1052747856,   15708222,    2095103,   15724554, 1057993796,   32491557,       1023,
            24118263, 1064288312,   49274891, 1069549567,   32511973, 1070583852,   66060272, 1065355263, 1060092989,
            2087966, 1038056572, 1060111360, 1064290355,    9432080, 1049594986, 1055918080, 1068486697,   15726592,
            1061133400, 1049625600, 1072684062,   20974577, 1073720390, 1044381696,    3139603,   28318689,   12566578,
            1043432,    8385543, 1063241780,   25154590,    1048555,   12583930, 1065340972,   37742601,       4079,
            17830894, 1068488740,   51380212, 1069552628, 1068488739, 1070587932, 1048550494, 1061163002, 1069539357,
            1073735699, 1056942160, 1052772352, 1070588951,    3142666, 1065333827, 1045431303, 1071639569,    5241856,
            1073725493, 1038089230, 1072690187,    8391671,    8376358, 1008714752,    1047556,   11539438,   17817623,
            1004480716,    1050621, 1073734680,   27257863, 1024410798,    2100215, 1072687124,   36700151, 1044340879,
            2092041, 1072688145, 1059044416, 1065320559,    1045511, 1071641613, 1063240758,   12558413, 1073739782,
            1071642633, 1068485677,   35636264, 1071643652, 1070595077, 1073731619,   59762688, 1067450371, 1069547521,
            5234713,   82843605, 1065353218, 1068500989,   10480655,  108019625, 1063257089, 1068502010,   16774149,
            1014973617, 1061159936,    2092028,   20972539, 1031756951,    1044463,    2095100, 1068489761, 1048541308,
            1048560,       1020, 1070587932, 1066373217,       4084, 1071646717, 1072686103,   10464323, 1069551607,
            1067452414, 1073736722,   29346851, 1063260155, 1063257088,    2093069,   49277952, 1058016255, 1060111361,
            4192263,   69211100, 1051722756, 1055917060,    6290434,   90191798, 1046478858, 1046473728,    7341054,
            1025466517, 1000279271,  995036391,    2092035, 1039104127, 1024403653, 1017063624,    1045506, 1052740713,
            1048529059, 1039090856,    1047553, 1067425874, 1073703039, 1062167688, 1072693248,    8370233,   26184795,
            11501670, 1071644672,   24106014,   52408372,   35628099, 1069547520,   39841792,   79680523,   60802078,
            1068498944,   55579618,  106954721,   85978104, 1066400768,   72363971, 1010773192,  111154128,  992932094,
            1035960441, 1031750827, 1007628486, 1019154652, 1046450280, 1052729486, 1025460396, 1045377209, 1057988693,
            1073708143, 1045389457, 1072647318, 1068479555,   21993552, 1064269941,   25128051,    6277166,   44021806,
            9409625,   53448783,   17816600,   67098635,   30388283,   80719914,   30405632,   90177511,   50318363,
            109040643,   41947112, 1022315690,   72347643, 1005525211,   54536143, 1039098001,   92278746, 1027551422,
            1047501918, 1055881336, 1019170982, 1049578656, 1054845008, 1073713247, 1034904719, 1072653442, 1062189122,
            17803332, 1050638457,   21987428, 1069532211,   36684840, 1066373218,   45063237,    4183076,   55566347,
            8365131,   69187622,   11527187,   74448877,   24099890,   92263430,   19920896, 1032809611,   40883224,
            1017068728,   28315630, 1046445175,   57667581, 1035948191,   36708315, 1060081763,   74451938, 1054828679,
            1057994818, 1073718350, 1031763077, 1073709166, 1062192184,   14661688, 1043301491,   18846805, 1066388526,
            29346850, 1055888481,   37727291, 1070585892,   44033034, 1067426895,   56607778,    1041433,   58720242,
            6273084,   76535816,    6287373, 1043303533,   18860072, 1029660821,   10484736, 1052743773,   31448084,
            1044345985,   14683124, 1063233613,   45085695, 1059030125,   19929064, 1073723453,   56625129, 1073715289,
            1068487718,   10471468, 1044354148,   14657605, 1069538336,   22009883, 1052745815,   30391345, 1070588954,
            32500744, 1061137482,   46124060, 1071638548,   44040182, 1069530172,   60809223, 1072689166, 1053797455,
            4180013, 1041204338, 1073739783, 1060090947,   13621278, 1052742755,          0, 1067434040,   22012943,
            1063231571,    2100218, 1073728556,   31455231,    1028164,    3149812,    7329824,   39847920,   12565557,
            2091018,   14672915, 1055897668,   23055397,    1044488,   22016006, 1061142587,   34592790,    1046535,
            29360121, 1066387506,   47179782, 1072692229, 1064291377, 1071632424, 1052748879, 1069546499, 1067438121,
            3136542, 1060090948, 1066401794, 1070585890,    8381460, 1067434042, 1064305665, 1073733659,   13627402,
            2082863, 1062208512,    4188179,   18872320,    9425956, 1060111360,    7335947,   24119286,   16768025,
            1042414,   11532292, 1068488740,   25158670,    1046511,   13632508, 1069538335,   33550339,       2034,
            1073736722, 1071637530, 1064292396, 1071648757, 1073737743, 1072687124, 1068487718, 1066405881, 1073737740,
            1043471, 1072684064, 1061161981, 1073738761,    3142666,    3137561, 1054868482, 1073739782,    5240837,
            7333907, 1049624583,    1047556,    7339008,   11529228, 1031788544,          1,    8390652,   15725574,
            988740855,          0,    2091012,   19920896, 1012865238,    1044468,    1044482,    2094090, 1036990644,
            1047540,    1046529,    3143688, 1061116049,       1013,          1,    3143685,   12548205, 1072697336,
            1072693248,    4193283,   38771784, 1069550585, 1070596096,    4193281,   66043936, 1066404860, 1069547520,
            4195327,   93318134, 1063258111, 1067450369,    5243902,  120591308, 1060110339, 1065352192,    6292478,
            1001331927,  986636560,  979296528,          0, 1021262010, 1014956267, 1006567661,          0, 1042240668,
            1043275974, 1032790219,          0, 1063219326, 1072644257, 1059012776,          0,   10456160,   27223163,
            12541061,          0,   32483391,   56592468,   38763617,          0,   55560221,   87010347,   67084348,
            0,   78638073,  118476802,   95404054,          0,  101715925,  999228653,  123725808,          0,
            1012875446, 1023353037,  993986794,          0, 1030706333, 1047477421, 1016014028,          0, 1047489669,
            1072650380, 1039088815,          0, 1065321580,   24082540, 1061116049,          0,    9411666,   49255498,
            10450035,          0,   27243574,   74429480,   33525845,          0,   46125082,  100652037,   56601654,
            0,   65007612, 1010772169,   80726038,          0,   82840542, 1031749806,  104851446,          0,
            1025466517, 1052727443, 1007628484,          0, 1039103105, 1072656504, 1026508971,          0, 1052739693,
            19893340, 1045388435,          0, 1066375257,   40870976, 1064268922,          0,    7318595,   62897188,
            9406561,          0,   22004781,   83875847,   28287048,          0,   36689942, 1023365286,   47167535,
            0,   51377150, 1040147600,   67096597,          0,   65014758, 1056929914,   85977083,          0,
            1038058613, 1073712228, 1022318750,          0, 1048547429,   16752717, 1037002891,          0, 1057988693,
            33535030, 1051688055,          0, 1068478533,   51365919, 1066372195,          0,    5226549,   68148232,
            7315535,          0,   15716387, 1034908803,   23048251,          0,   27254801, 1048544370,   37733414,
            0,   37746687, 1061131360,   53467154,          0,   48236524, 1073718351,   69200893,          0,
            1050649684,   13612093, 1035960441,          0, 1056944201,   27247659, 1046449258,          0, 1063238718,
            39834649, 1057987675,          0, 1070581810,   53470215, 1068476492,          0,    3133478, 1047500896,
            6272061,          0,   10477593, 1055892563,   17810477,          0,   17820685, 1065332807,   29348893,
            0,   25163776,    1031226,   40886286,          0,   31459315,   10471468,   52425726,          0,
            1062193204,   19911711, 1049601108,          0, 1065340973,   30400530, 1056944202,          0, 1068487718,
            39840772, 1064286271,          0, 1072684062, 1059044414, 1071629364,          0,    2090007, 1064289333,
            5229609,          0,    5237775, 1070582829,   13621279,          0,    9434119,    2085924,   20963348,
            0,   12581888,    8379419,   29355017,          0,   15730681,   14672915,   36698110,          0,
            1073735700,   19917834, 1063242800,          0, 1073736721,   26211330, 1066390569,          0, 1073737742,
            1070587931, 1070585891,          0, 1073738763, 1072686103,    1040412,          0, 1073739784,    1043474,
            5235734,          0, 1073740805,    3141646,    9432079,          0,    1047554,    5239818,   13627401,
            0,          0,    8386566,   17822723,          0,       1023,   10483714,   22020093,          0,
            1042420,   13631487,    2093067,          0,    1045492,    1044473,    3142665,          0,    1048565,
            1045496,    3143687,          0,       3062,    1047543,    3144708,          0, 1071647736,    1048567,
            4193282,          0, 1068502011,       1015,    4194304,          0, 1064307710, 1072694264,    4195327,
            0, 1061159937, 1072694265,    5243902,          0, 1054863360, 1072694268,    6292477,          0,
            972999971,          0,          0,          0, 1001320701,          0,          0,          0, 1029640408,
            0,          0,          0, 1057960115,          0,          0,          0,   12539022,          0,
            0,          0,   41907303,          0,          0,          0,   72325184,          0,          0,
            0,  102744086,          0,          0,          0,  133162989,          0,          0,          0,
            986641661,          0,          0,          0, 1010766045,          0,          0,          0, 1035940029,
            0,          0,          0, 1060064413,          0,          0,          0,   11495548,          0,
            0,          0,   36669531,          0,          0,          0,   61842489,          0,          0,
            0,   88065046,          0,          0,          0,  114288627,          0,          0,          0,
            1001331927,          0,          0,          0, 1021260988,          0,          0,          0, 1042238625,
            0,          0,          0, 1062167686,          0,          0,          0,    9404522,          0,
            0,          0,   30382159,          0,          0,          0,   52408370,          0,          0,
            0,   73387030,          0,          0,          0,   95414265,          0,          0,          0,
            1014973617,          0,          0,          0, 1031755931,          0,          0,          0, 1048538245,
            0,          0,          0, 1065320559,          0,          0,          0,    8361048,          0,
            0,          0,   25143362,          0,          0,          0,   42974251,          0,          0,
            0,   59757587,          0,          0,          0,   77589500,          0,          0,          0,
            1028615308,          0,          0,          0, 1042250874,          0,          0,          0, 1054837865,
            0,          0,          0, 1067424856,          0,          0,          0,    7318598,          0,
            0,          0,   19905588,          0,          0,          0,   33541154,          0,          0,
            0,   47176720,          0,          0,          0,   60813310,          0,          0,          0,
            1042256999,          0,          0,          0, 1051697242,          0,          0,          0, 1061136461,
            0,          0,          0, 1070576704,          0,          0,          0,    6275123,          0,
            0,          0,   15715366,          0,          0,          0,   25155609,          0,          0,
            0,   34595851,          0,          0,          0,   45085694,          0,          0,          0,
            1055897666,          0,          0,          0, 1062191161,          0,          0,          0, 1067436081,
            0,          0,          0, 1072681000,          0,          0,          0,    5232672,          0,
            0,          0,   11526167,          0,          0,          0,   16771086,          0,          0,
            0,   23064582,          0,          0,          0,   29359102,          0,          0,          0,
            1069539358,          0,          0,          0, 1071637529,          0,          0,          0, 1073735701,
            0,          0,          0,    2092048,          0,          0,          0,    4190220,          0,
            0,          0,    7336968,          0,          0,          0,    9435140,          0,          0,
            0,   12581889,          0,          0,          0,   14680061,          0,          0,          0,
            1043449,          0,          0,          0,    1044472,          0,          0,          0,    1046519,
            0,          0,          0,    1047543,          0,          0,          0,       1015,          0,
            0,          0,       1015,          0,          0,          0, 1072694264,          0,          0,
            0, 1072694266,          0,          0,          0,          0,          0,          0,          0,
            1071640590, 1072693248, 1071640590,          0,    2102258,    5252067,    3150834,    5252066,    9451474,
            12602303,    9451473,   12603325,   16802731,   21003158,   16803752,   21004176,   25204605,   31504223,
            25206646,   29408090,   36755264,   43054884,   33609537,   37810987,   48305929,   54604528,   42010392,
            45161222,   60903125,   67202746,   49360628,   53561056,   74549918,          0,   58810058,    1049599,
            1072689166,    6301665, 1073737741,    6301665,    3150834,   12603323,    3150833,   11555770,    8403919,
            19957644,    8403919,   17860492,   15756197,   27311960,   14707620,   24165215,   24159089,   32565044,
            21012341,   26270529,   30463812,   35717917,   25217870,   27324210,   34666278,   40967940,   27322168,
            28376866,   37818131,    2098174,   27325228,    4196347,   43070195,    6301664,   29428504,    6301662,
            2094091,   10507195,    4191240,    9457596,    4200431,   15762321,    5249005,   12614552,    8403918,
            18919275,    7355342,   13672312,   13658022,   19974994,   11560874,   12629860,   17864573,   17881926,
            13668231,    9487194,   19971933,   16835389,   13676397,    6343508,   18928459,    5245944,   11583326,
            7344116,   17882946,    6302685,    8439639,    6302684,   16837431,    7360446,    4247378,    6310850,
            6289412,    8418208,    8388607,    5269417,    6298603,    8425351,    7347176,    2129813,    7355342,
            5284726,    6306767, 1071682441,    8413103,    1093486,    5266357, 1066441602,    8422290, 1069594474,
            4224926, 1060152191,    7379837,    8393711,    1084302,   10491882,    3189617,    6302682, 1069586309,
            6302682, 1072739180,    4212678, 1063296896,    3163082, 1067497321,    1073075, 1057006463, 1071666109,
            10487802, 1070625700,   11537395, 1065378738,    7348197, 1064337306,    8397794, 1058041772,    5257168,
            1058047894,    4208594, 1049654185,    3167164, 1049660308,    1067971, 1040218024, 1072719787,   10492902,
            1068522423,   10493921, 1067482014,    6302681, 1061185454,    5254105, 1061192599,    1063887, 1053848490,
            14292, 1053854613, 1067469766, 1045460904, 1064320976, 1046515604, 1060131776, 1036024744, 1053837262,
            13636588, 1050696637,   13637605, 1043352525,    8397791, 1041260476,    8398813, 1032867791,    3158996,
            1030775741,    3158998, 1021333457, 1071662026,   10494940, 1068514258,    8398807, 1064325059,    4205529,
            1059079118,    3156954, 1054889918, 1071657945, 1048594381, 1069558750, 1045454780, 1060124633, 1038109646,
            1056975843, 1036018620, 1048590299, 1026576336, 1043344360, 1025533885, 1037056990, 1015042002, 1029712878,
            12591070, 1024474081,   10494935, 1016080372,    7350234, 1011891173,    6301656, 1001400314,    2109401,
            6302675,    1059804,    3156942, 1066415065,    2108378, 1063267296,    1058778, 1054881754, 1068509155,
            1049635813, 1066410984, 1042299868, 1052779500, 1036004331, 1049631733, 1030765535, 1038098421, 1022371825,
            1032851457, 1018182627, 1022368766, 1008740343, 1016072205, 1005599719, 1007686662,  995108861,  999292952,
            8399825,  981470210,    4206538,  955248644,    4205526,      12234,    2108372, 1068492821,      10207,
            10203,      10210, 1072694271, 1060120552, 1064311790, 1058021359,    5251046, 1045438448, 1045434366,
            1041242107,   12600261, 1030757369, 1027604494, 1024461831,   23100308, 1015026690, 1009776669, 1007682579,
            34648930,  993004547,  991947819,  991951902,   46194487,  969934848,  974119992,  940567552,   56691472,
            13252, 1067444248, 1065344034, 1070590995,      11218, 1072693248, 1071641611,          0,       9189,
            4201449,    2102259,    5253089, 1054873590,   11549645,    8400855,   11554748, 1035995142,   24146842,
            17850286,   18907026, 1019214870,   39892829,   29398906,   25207665, 1001386020,   53538599,   40946508,
            30457686,  982509617,   67183351,   51443491,   35707710,  910152704, 1069542420,   61939452, 1073738764,
            1064294436,       2046, 1068490781,    1051641, 1070593036,    5252067, 1072691208,    4205534,    2101237,
            12602303,    2103280,    8409022,    8399836,   22052753,    8402896,   11562913,   16798647,   30452584,
            15755175,   13667209,   31496058,   37801799,   22057857,   14720887,   47240001,   46199591,   28357475,
            15774568,   60885775, 1071640592,   33607498,    3143684,   74529504,    1050619,   38857521,    2102259,
            1066392607,    5253087, 1072687125,    3156958, 1071641609,   10506172,    1047555,    3163079,    2102257,
            15759256,    3151853,    3170227,    8401875,   19961724,    6306766,    1077155,   17851304,   23113575,
            10510255, 1072725911,   26253179,   25216851,   12615572, 1070631822,   34651991,    1045513,   14718847,
            6293498,   42001207,    2101238,   14723951,    3151853,   50397975,    4205534,   15776608,    1059807,
            1069540377,    6310850,    3141645, 1071659986, 1073739782,    7366570,    2099196, 1067469767,    3151854,
            7372694,    3153897, 1062229950,    7355342,    7376775,    3160018, 1056989111,   13657002,    6332283,
            3167165, 1051748274,   17861513,    5241856,    2123691,    7344111,   21014385,    3150831,      30621,
            3152872,   24165213,    2108382, 1071679378, 1072703459,   27317065,      16332, 1068536713, 1065365470,
            1043473, 1071666109,    8386561, 1058027482,    1048576, 1068524465,    5246963, 1049639896,    3152875,
            1065381799,    2105318, 1041252310,    5258192, 1061190560, 1072706521, 1032864726,    7363509,    7343093,
            1069564876,    7345123,    7369631,    4201450, 1065373634,    3152868,    7374734,      10209, 1060133818,
            1070605287,    6330241, 1068512216, 1053844405, 1059070954,    5285749, 1062223825, 1048603568, 1048585197,
            6288391, 1055934411,    9439219, 1037050865,    4197368, 1049644999,    5247979, 1025516533,    2105319,
            1042307012,    1056741, 1013982201,    1062869,    7345129, 1069558752,    3152855, 1072712644,    3152870,
            1061172188,    1056737, 1070619575, 1071653861, 1053834201, 1067458540, 1066429356, 1062217700, 1045446615,
            1052776438, 1063286692, 1052781540, 1037059030, 1039141888, 1058045853, 1043345380, 1028671446, 1024460810,
            9438202, 1033909222,    8392675, 1009778708,    5247983, 1023423464,    5248995,  973072388,    2105317,
            5248989,    1056742, 1060097074, 1071656924,    2105314, 1064313832, 1066393628, 1065368532, 1068507113,
            1053828075, 1073739783, 1059079118, 1055924208, 1042293743,    7346156, 1052789705, 1043340279, 1031807987,
            18891716, 1045451717, 1030756350, 1020273655,   33585045, 1038113731, 1018171396, 1008739324,   47228775,
            9440235,  996148225,    4200404,   60871485,    5248999,       8146,    2104284, 1063244841,    1056741,
            8159,       8166, 1068492823, 1067460580, 1066408942, 1060117489,          1, 1058024420, 1050678268,
            1046483963,    7348197, 1048588260, 1033896969, 1031801861,   15747011, 1038102501, 1019214870, 1017119759,
            24144799, 1028666343, 1003484195, 1002438680,   33592189, 1018180585,  986703919,  959438848,   43037533,
            6296540, 1057998902, 1055899708, 1067441184,    3152863, 1065344032, 1063245863, 1071640591,       8166,
            1072690187, 1070590994,          0, 1062215660,    7345136,    3147771,    5252066, 1049631731,   20988869,
            12594137,   10503111, 1037047802,   37780368,   26237868,   14704557, 1024462849,   54570845,   39882622,
            19954581, 1005586434,   70312749,   54574930,   24155006,  985661440, 1061146670,   68217640, 1071638550,
            7117, 1067443225, 1060096050, 1073739784,       8152,    1047556, 1066392608,       4087,       8167,
            7347176, 1071641612,    1057764, 1058019317,   17844163,    3149812,    3161040, 1042286595,   29389722,
            11547604,    4214718, 1026555920,   40934258,   19946417,    5268397, 1010825245,   52478797,   29392782,
            6322078,  995093545, 1065343012,   38839149,    3141642,  931119104, 1069542419,   47236941,    1049599,
            1053801537,       1023, 1065341992, 1072698355, 1062196267,    6300643, 1069541399, 1071653863, 1069541398,
            12601284, 1072691207, 1069559771,    2098175,   19949478,    2103280, 1067466704,   13641692,   27297673,
            7353301, 1064324038,   28336043,   33596269,   12604346, 1062229949,   46176118, 1069540379,   17854369,
            6291453,   61918020, 1072690188,   22054793,    2100215,   78707477,       3066,   27304818, 1071650801,
            1057997879,    3154915, 1071636509, 1066409964, 1064294436,    6307787, 1072689167, 1061169127, 1071640591,
            9459637, 1072693248, 1055928290,    3148791,   12611489,    1054702, 1049637854,   11546582,   15762318,
            2109402, 1044397019,   23092142,    1043472,    4212679,    5244911,   34637702,    1047555,    5266357,
            2101231,   46182239,       4085,    6319013, 1070602224,   57726779,       9189,    6324118, 1062214641,
            1063243821,      14293,    3140624, 1052777459, 1067442204, 1072711623,    2095109, 1044388853, 1072690186,
            1071667129,       3065, 1034951671,    3150834, 1070622637, 1071651821, 1026564089,    9450452,    4192260,
            1070607329,    2100192,   16799669,    1050619, 1068513237,    1053671,   23099287, 1072698354, 1066420171,
            1069553647,   30447483, 1068507113, 1063277505, 1056969719,   36746080, 1065364449, 1061183416, 1045434367,
            1068488739, 1061173209,    7336960, 1032849415, 1070590995, 1056980946,    3146746, 1020265487, 1073740803,
            1052789708,       4084,  989848579,    2103279,    5243894, 1069554670, 1049602131,    5256151,    2101235,
            1064313833, 1059044413,    8408000, 1070602224, 1059072996, 1068487718,   11559851, 1064311790, 1052782560,
            5237771,   13663127, 1056972781, 1047541725,   17831913,   16813956, 1049633771, 1041252313,   33571776,
            1041431, 1042294763,    7340015,   50360212,    1045514, 1034955754,    3148783,   67149672,       2044,
            4196327,       6127, 1054848069,       7149,    2102251, 1066407920, 1062193202,      11229, 1069553647,
            1058020338, 1069539358, 1072709582, 1059067892, 1048583156,    4192261, 1072713664, 1049630713, 1040194550,
            13638632, 1071669171, 1038095358, 1030758392,   25182150, 1070624679, 1027608579, 1021321210,   37774242,
            5238792, 1010828289,    3147742,   50367359,    3145727,       4057,    2101219, 1060095031,       4087,
            6115,       7147, 1065341991, 1070603246, 1068506095, 1063262195, 1070589974, 1067460581, 1054872570,
            1050678267,    3144705, 1063268317, 1041238021, 1039141891,    9444328, 1059077077, 1027604496, 1026556939,
            16791501, 1054884815, 1013970971, 1015021587,   25188274, 1050693577, 1000337446,  979360768,   33584023,
            8388600, 1046454361, 1044356189, 1065341994,    4196340, 1056946242, 1053799496, 1068490780,       5106,
            1067438123, 1063241778, 1071640590, 1067457519,    5236750, 1073733658,          0, 1061167085,   18880490,
            10486780,    4201450, 1053828076,   37766077,   25177045,    8401878, 1046489067,   56653708,   41966506,
            11552707, 1039150058,   75540316,   58754942,   15752111, 1031811050, 1051701324,   75544402, 1071636507,
            5243879, 1060095031, 1050651726, 1071639569,    3149801, 1069537314, 1057996859, 1071642630,       6125,
            5238792, 1066390568, 1071647739, 1064310770,   15734761, 1073736723, 1071651822, 1053825014,   29376451,
            8391672, 1071654881, 1044386811,   44067739,   19934167, 1072707540, 1032851456,   58758003,   31477684,
            1072711624, 1018169345, 1056947262,   44070800,    3141643, 1003486208, 1064292396,   56662893,    1046533,
            3029, 1070588954, 1056947263, 1070598143,       5085,    4192259, 1063242799, 1067454457,       7145,
            11541480, 1068489759, 1065359347, 1061165044,   20986826, 1073737740, 1062215660, 1047531519,   31481770,
            6295541, 1059071974, 1033896970,   41975691,   13642715, 1055928289, 1021312022, 1063242800,   20989888,
            4193274, 1007678497, 1067441186,   29385636,    1050617,  953137152, 1071639570,   37782409, 1070599161,
            1041208421,    1049599, 1064291376, 1064308728, 1051700302,    7347177, 1067440163, 1058018296, 1062192183,
            12597202, 1070589973, 1051726840, 1072684062,   18894778, 1073739782, 1045436409,   11535358,   25192355,
            2101236, 1038096377,   28322772, 1068488739,    6301664,    3145705,   47210405, 1070589975,   10501069,
            1051629,   66097012, 1071641610,   13652921, 1070601203,   84984644, 1072695292,   17852325, 1061164024,
            1047503958,    1055724, 1071635488, 1050677246, 1055897666,    3157980, 1071638550, 1041238020, 1065340973,
            5259212, 1071641612, 1031799819, 1073735702,    7361468, 1070596097, 1007674370,    9439225,    1042452,
            1071649780, 1037009015,   23079894, 1072690187, 1071652840, 1050646623,   36722607, 1071643651, 1071656923,
            1063235654,   51412871, 1069550586, 1072709582,    3132458,   66103135, 1068505072, 1072713666,   18868232,
            1053799495, 1067459559,    3139598,   35657700, 1061144629, 1065365469,    2094088,   54542266, 1067440164,
            1064319956, 1073740802,   74476431, 1073737743,    4191235, 1069550588, 1044354149,    7343094,    1049599,
            1066406902, 1054845008,   16788441, 1070599164, 1063263216, 1065335867,   26233786, 1066405880, 1060119529,
            3134499,   36728730, 1061164021, 1056975844,   14674949,   47222651, 1056971762, 1053832158,   28317671,
            1060095032, 1051729904,    6289403,   43006916, 1065341993, 1046488045,    3145722,   57696160, 1069540378,
            4194289,       3065, 1051699282, 1073738761,    1051635, 1067454456, 1059043393,    4198388, 1070600182,
            1061164024, 1067437103,    9447389, 1062211576, 1054872568,    2088987,   15745990, 1054871547, 1048582136,
            10482691,   22043567, 1046482942, 1041242105,   19929066,   27292567, 1038093314, 1034951673,   31470541,
            1067439145, 1025507329,    3144679,   41964465, 1069539357,        992,    1050603, 1057995840, 1070590993,
            4071,       5104, 1063241778, 1072692227, 1070602224, 1065358325, 1068488740,       5108, 1059066872,
            1055920123,    1042452,    2106340, 1047529473, 1046480897,    6290433,    4208596, 1035994122, 1035994119,
            11539437,    6309828, 1025506324, 1026555918,   18885592,    8412084, 1013969950,  998234112,   26231746,
            1041432, 1033861248, 1030714499, 1065339949, 1073737743, 1047498855, 1043303531, 1067440163, 1072691207,
            1062186060, 1056941139, 1069540376, 1070598142,    4180014, 1070579769, 1072690188, 1068504053,   20964361,
            11525146,          0, 1067458539,   39852002,   27263991,    3150833, 1066413026,   60834742,   45099983,
            6300643, 1064317913,   81818503,   65034149,    9450453, 1063272400, 1041206382,   83919738, 1072686106,
            5238789, 1052745816, 1039109231, 1071639571,    3143681, 1064286272, 1049600090, 1070593037, 1072695294,
            3133478, 1060090950, 1070595078, 1068502010,   16772103, 1070581807, 1068500990, 1064309751,   32511973,
            9430037, 1067454455, 1059067892,   49299391,   20973559, 1067457519, 1053826033,   66086807,   35661781,
            1066410983, 1049633774, 1047501915,   50351026,    3141638, 1044391916, 1056944201,   66089869,    1046532,
            5240817, 1066386485, 1047502939, 1070596098,    2098162,    2087967, 1054847050, 1066402816,       4085,
            12578820, 1063239736, 1063259134, 1066405879,   24123368, 1071633446, 1059065852, 1059065849,   36714440,
            6286352, 1054871547, 1050677245,   50354088,   15730679, 1050678266, 1042287616, 1054847049,   26223580,
            2095089, 1031799809, 1061142586,   36717503,    1050611, 1020263424, 1068486698,   47210402, 1071648759,
            1047518,    1041431, 1055896647, 1064308730,       2019,    8386562, 1061142585, 1056967678,       6123,
            16783339, 1066389547, 1049626626, 1064309748,   25178067, 1071636508, 1042285575, 1053822972,   33573817,
            3142667, 1024452610, 1042285574, 1062192183,    8391671, 1025464477, 1030750223, 1065340971,   15736803,
            1041199234, 1019213849, 1069539358,   22034381, 1057983591,  975157248, 1073736720,   29380536,    2074697,
            1026518157,    3145728, 1064290354,   20957224, 1041204340,    7345135, 1066390568,   40888322, 1054841946,
            12593117, 1068490782,   60823517, 1069529149,   17841100, 1071639570,   82853811,   12572701, 1068488740,
            1073739782, 1033859206,   30409719, 1069539355,    2100217, 1047496815,   50343884, 1070590994,    5250026,
            1061133400,   71326623, 1071642633,    7351260,    2077758,   93358960, 1071646719,   10501069,   16764962,
            1034911865, 1072698356, 1072685085,   32500738, 1046451299,       8169, 1071638551,   49288162, 1057991756,
            1059806, 1071640592,   67123135, 1070580788,    2092048, 1070594057, 1042253935,   10477592, 1073738764,
            1068498946, 1052744796,   24118263, 1071642631, 1068502010, 1063235656,   40905682, 1068498947, 1067456499,
            1033267,   57693099, 1065355262, 1067458539,   12572700,   74480515, 1063260153, 1066412003,   25161730,
            1043305573, 1061165045,    4189191,   37753831, 1052747858, 1059068912,    2094084,   51392458, 1061141567,
            3143675, 1073740803, 1050648664, 1071632426,    1049595, 1068498945, 1057992777,    8382483, 1071646716,
            1065355263, 1065336889,   18876407, 1065356285, 1061161981, 1073729576,   30418904, 1060113406, 1056968700,
            8381462,   44058552, 1053821951, 1052775418,   16774145,   56650648, 1048578049, 1048581113,   26218476,
            1051699281, 1040188416,    3141616,   35661782, 1057994817,    1046502,    2097138, 1059043392, 1064290354,
            2027,       3061, 1063240757, 1071635489, 1071650801, 1068503032, 1068486697,    5238797, 1063261175,
            1061161980, 1072685085,   12584951, 1053822974, 1052772352,    4189199,   20980703, 1044382725, 1045431301,
            9436161,   29375430, 1035993101, 1038091274,   13635570,   38819757, 1027602453, 1018159104,   19931106,
            1060092989, 1020218537, 1017072810, 1067439145, 1063242801, 1039100044, 1032807568, 1068489761, 1067440164,
            1056932974, 1049591925, 1070588954, 1071637527,    2073678, 1067424856, 1071639570,    2094088,   23053355,
            11515961, 1073738761,    5245944,   45081603,   31447062,          0,   10493926,   67114970,   50332657,
            2100215,   14692308,   90194862,   72362952,    4200431,   19940291, 1029661842,   93344670,    1043473,
            1068487720, 1044348025, 1026516113, 1073737742, 1069538336, 1060082783, 1040153723, 1071641610, 1069541399,
            2076740, 1053790307, 1070594055, 1070592014,   18861093, 1068476491, 1067450372, 1071643652,   36694018,
            9421873, 1065354240, 1071647737,   55579615,   25157651, 1064307710, 1072699374,   74464185,   40895475,
            1062211579,    1057763, 1038056570,   57681872,    2094072,    2110424, 1049596005,   75515821,    2097145,
            2091026, 1062184016, 1037009016, 1072696315,    1044494,    1031225, 1047499877, 1067453436, 1072690185,
            14668831, 1057989714, 1063259134, 1070595077,   29355010, 1069529150, 1058014209, 1066402816,   44045284,
            7327784, 1052771332, 1064307708,   58733509,   18868240, 1042280449, 1062212599, 1046451299,   31458293,
            1011822788, 1060116467, 1054843986,   44048345, 1032801446, 1058021358, 1064286273,   57687996, 1053780104,
            4190203,    1034286, 1046452319,    1016936,    2096123,   10477593, 1053796432,   23045190,       2044,
            20968449, 1062189121,   46123042, 1068502012,   31462378, 1069533233,   69201916, 1063259133,   43002832,
            4184095,   92279764, 1056967678, 1054846028,   13626380, 1022315688, 1050675200, 1061141567,   20973559,
            1039099022, 1044382720, 1067436081,   30415841, 1056930932, 1035993088, 1073731619,   39859147,    1021017,
            1044453,    6285331, 1055896646,   18853949,    1048552,   13629441, 1061142587,   37736478,       4078,
            19927023, 1065339951,   57667582, 1067455476,   27272156, 1070585891,   76550108, 1059065850, 1063241781,
            2090006, 1031761036, 1049626625, 1066389547,    6288392, 1045396599, 1040188425, 1069538338,   11536377,
            1060082785, 1031797777, 1072686103,   16783338, 1073719371,  998227968,    2093068,   23078875,   14662707,
            1011826871,    5241856, 1066389548,   30398490, 1029658779,    8392693, 1067440165,   46134271, 1047491709,
            11541480, 1069539358,   60821475, 1066374238, 1071636509, 1070589974, 1042253936,   12563517, 1071637528,
            1072689166, 1052743775,   33544216, 1070590994, 1073740805, 1063233614,   55575535, 1070593036,    1050620,
            1073723452,   78654404, 1070594054,    3150835,   11521065,  102782871, 1069547520,    5250026,   23060501,
            1021270174, 1069550586,    2091026,   34599936, 1037004933, 1070601205,    1043471,   45091818, 1051691116,
            2092037, 1072690188, 1051698260, 1067425874,    1046531, 1071642633, 1059041351,   10468405, 1072692227,
            1069546501, 1066384442,   28302357, 1068498946, 1066401794, 1073728557,   46138354, 1065354241, 1065355263,
            7329823,   65021900, 1062208513, 1063259132,   14673936,   84955046, 1058014209, 1062211578,   23066624,
            1031763077, 1053819904,    2092024,   30411760, 1043302512,    1045484,    2095096, 1061143608, 1055890523,
            1007,       2042, 1065339951, 1068478533,       5107, 1070599163, 1069536295,    8374316, 1067454455,
            1065356285, 1072684062,   22012945, 1060114428, 1060111360,    3139604,   35652596, 1053820929, 1054868482,
            7335946,   51389396, 1046478855, 1049625606,   11533312,   67126196, 1040186381, 1037035520,   15730679,
            1041206380, 1007624402, 1002381523, 1071636508, 1050647643, 1029651634, 1022311605, 1071637527, 1060089930,
            1051679889, 1043290263, 1072688147, 1069531191,    1014895, 1064268920, 1072689166,    5231652,   25140299,
            11506775, 1073738762,   15722510,   49267748,   34583605, 1073740805,   26215414,   75492347,   57661455,
            0,   37756893,  100668368,   81788904,    1050621,   49297347, 1017068726,  104867776,    2093055,
            1051699283, 1035950234, 1013924021,    1047551, 1057993797, 1054830718, 1030707355,       1023, 1064288312,
            1018977, 1047490690, 1071646719, 1070583850,   20950081, 1065322599, 1068500991,    3137563,   41928736,
            9413707, 1065354240,   10481674,   63959037,   28295214, 1063257089,   15730680,   84939736,   47176718,
            1059059712,   24124390, 1027562650,   67108845,  999228651,   31468499, 1042247811,   87039947, 1023354058,
            1061142585, 1057982571, 1025466518, 1048527017, 1064291376, 1073717330, 1039103105, 1072652423, 1067439143,
            16758840, 1052739692,   25133156, 1070587933,   34591772, 1066376278,   50307136, 1073736722,   51377150,
            7320639,   77579290,    3143687,   68161504,   23054375,  103803891,    6293499, 1037006974,   37741580,
            1010772170,   10490862, 1049594987,   53477361, 1031749806,   13639650, 1061133400,   68164565, 1052728465,
            1071635488, 1073721411, 1037009016, 1073706101, 1071637530,   12567598, 1047498855,   20942935, 1071638549,
            26205207, 1057988695,   42970168, 1070592015,   39842815, 1068478533,   64998425, 1070594057,   52431847,
            5227571,   87026680, 1070595075, 1046452322,   16765983, 1022315689, 1069549565, 1055892563,   28305418,
            1039098002, 1070600184, 1064285252,   38798325, 1055880314, 1070602226, 1073726516,   51386335, 1073712226,
            3139589,    9425956, 1048551514,   16753738,    2094084,   18867218, 1054846030,   34584624,    1047555,
            28308480, 1062189121,   53465110, 1070596098,   37751789, 1069532212,   71299068, 1066401793, 1056945222,
            3134502, 1033858184, 1063257089, 1062191163,   11526167, 1046446198, 1060111361, 1067436080,   18870280,
            1060081763, 1055917056, 1073730597,   26215416, 1073717327, 1051722752,    5234713,   34608104,   13612092,
            1043435,   11529229, 1060094012,   27248679,    1047533,   17823744, 1063241780,   41933843,       3056,
            23071731, 1067438123,   55570430, 1070601205, 1066389546, 1071634466, 1044353128, 1064308729, 1068488739,
            1041433, 1054841945, 1056967678, 1070587933,    5237775, 1064283211, 1049625604, 1072687126,    9435141,
            1073723452, 1043333130,    1044495,   13632507,   10471469, 1020251136,    4191240,   17829874,   20960286,
            996085986,    6290432, 1070586910,   31450126, 1018114242,    8390650, 1071637530,   41940991, 1040141474,
            1043470, 1071638549, 1055896647, 1063218304,    1045515, 1072688145, 1062190141,   12553309, 1073738761,
            1072690188, 1068483635,   36679736, 1072691207, 1073739783,    1036329,   62903312, 1071643652,    1047555,
            7329823,   88080358, 1069547523,       1023,   13624340,  114305979, 1068498945,    1050619,   20966409,
            1007628484, 1067451392,    2091008,   27261951, 1026509992,    1044465,    2094079, 1066390567, 1045390476,
            1047538,    1048575, 1069538337, 1064271983,       3061, 1072694271, 1072685083,   10460241, 1071648759,
            1069549567,    1042453,   31438897, 1066404858, 1067451392,    4189200,   52419599, 1062210558, 1064305665,
            7335946,   74448875, 1058014210, 1062208514,   10483716,   95429574, 1052770310, 1055912960,   13631487,
            1019170981,  993981691,  987691259,    1043463, 1034905742, 1020204248, 1011815642,    1044485, 1050639479,
            1046426804, 1035941049,    1046531, 1066374239, 1072649360, 1061114008,    1047553,    8367173,   26179691,
            11497590,    1047552,   25150506,   54500420,   37720146,          0,   42983437,   82821147,   63942701,
            1023,   60817391,  112192497,   90166279,          0,   77602768, 1005525210,  117439456,          0,
            1030713479, 1027552444, 1000283352,          0, 1043300468, 1050628253, 1021260988,          0, 1054839905,
            1073704062, 1042239648,          0, 1067427918,   23038046, 1063217283,          0,    6274105,   47163452,
            10454118,          0,   19910691,   71288858,   31432776,          0,   33548299,   95415286,   53460009,
            0,   47185907, 1017067706,   76535816,          0,   59774938, 1034899616,   98565096,          0,
            1042255977, 1053780102, 1013924021,          0, 1051696219, 1073709163, 1030706333,          0, 1060088908,
            18847824, 1047489670,          0, 1069530172,   38777908, 1065320558,          0,    4181036,   58706967,
            8362070,          0,   13622299,   79686650,   26192957,          0,   24112137, 1027562649,   44024867,
            0,   32506871, 1043296388,   61856777,          0,   42996708, 1057981550,   80739310,          0,
            1053798475, 1073715289, 1026516114,          0, 1059043393,   15707203, 1040152703,          0, 1065337910,
            31440940, 1053788268,          0, 1070583851,   47174677, 1067423833,          0,    2087967,   63959037,
            7318598,          0,    8382483, 1039106168,   20954162,          0,   14676999, 1050644584,   34590749,
            0,   19923962, 1062181975,   49275912,          0,   26218477, 1073720390,   62913523,          0,
            1065339949,   12565557, 1040156783,          0, 1067439143,   24103971, 1049598049,          0, 1069538336,
            36691985, 1059038290,          0, 1071637529,   48231422, 1069527108,          0, 1073736722, 1050648663,
            5226549,          0,    3141643, 1057991755,   15715366,          0,    5240836, 1066383423,   26205206,
            0,    6292477,    1033267,   36695046,          0,    9440246,    9424934,   47184887,          0,
            1042447,   17816601, 1052748876,          0,    1044493,   26208268, 1059043394,          0,    1045514,
            34600959, 1065336888,          0, 1072691208, 1061143607, 1071631406,          0, 1071643653, 1065339951,
            4183076,          0, 1070595075, 1070584871,   10477593,          0, 1068498946,    1039391,   17819663,
            0, 1067450368,    6284311,   24114180,          0, 1067452415,   10480655,   31457274,          0,
            1042417,   15725575, 1065340970,          0,    1046514,   20970495, 1068488740,          0,       1011,
            1072686103, 1070586910,          0,       4086, 1073735699, 1073734680,          0, 1068503033,    1043471,
            3139603,          0, 1064307708,    2093068,    6287373,          0, 1060111360,    3142664,    9434119,
            0, 1055917060,    4192261,   12580866,          0, 1043325952,    6290434,   14681084,          0,
            980346125,    6292479,    1043464,          0, 1006568682,    1044470,    1044486,          0, 1032791238,
            1046518,    1045508,          0, 1060062370,    1048566,    1046530,          0,   12544126,       2039,
            1047553,          0,   40863832, 1072696313,          0,          0,   69184560, 1070599162,       1023,
            0,   97506310, 1068500989,       1023,          0,  126877660, 1066402816,          0,          0,
            993986794,          0,          0,          0, 1016014027,          0,          0,          0, 1039089837,
            0,          0,          0, 1062165645,          0,          0,          0,   11499630,          0,
            0,          0,   34576461,          0,          0,          0,   58701867,          0,          0,
            0,   83875848,          0,          0,          0,  108002276,          0,          0,          0,
            1007628486,          0,          0,          0, 1025459373,          0,          0,          0, 1044339859,
            0,          0,          0, 1064268921,          0,          0,          0,    9407582,          0,
            0,          0,   29337666,          0,          0,          0,   49266726,          0,          0,
            0,   69196809,          0,          0,          0,   89127915,          0,          0,          0,
            1020220579,          0,          0,          0, 1035954318,          0,          0,          0, 1050638457,
            0,          0,          0, 1066372196,          0,          0,          0,    7315534,          0,
            0,          0,   23049271,          0,          0,          0,   39832608,          0,          0,
            0,   55566345,          0,          0,          0,   71302129,          0,          0,          0,
            1033861248,          0,          0,          0, 1045399664,          0,          0,          0, 1056937055,
            0,          0,          0, 1068475470,          0,          0,          0,    6272061,          0,
            0,          0,   17810476,          0,          0,          0,   30398490,          0,          0,
            0,   42985479,          0,          0,          0,   54524917,          0,          0,          0,
            1046453341,          0,          0,          0, 1054845009,          0,          0,          0, 1062188101,
            0,          0,          0, 1070578745,          0,          0,          0,    5228588,          0,
            0,          0,   13620256,          0,          0,          0,   22011923,          0,          0,
            0,   30404613,          0,          0,          0,   38797304,          0,          0,          0,
            1059045435,          0,          0,          0, 1063241779,          0,          0,          0, 1068486699,
            0,          0,          0, 1072683043,          0,          0,          0,    3137563,          0,
            0,          0,    8382483,          0,          0,          0,   13627403,          0,          0,
            0,   17822723,          0,          0,          0,   23068667,          0,          0,          0,
            1071637529,          0,          0,          0, 1072687125,          0,          0,          0, 1073736721,
            0,          0,          0,    1044493,          0,          0,          0,    2094090,          0,
            0,          0,    3143686,          0,          0,          0,    5241859,          0,          0,
            0,    6290433,          0,          0,          0,    7341054,          0,          0,          0,
            1042423,          0,          0,          0,    1045494,          0,          0,          0,    1047542,
            0,          0,          0,       1015,          0,          0,          0,       3064,          0,
            0,          0, 1071647738,          0,          0,          0, 1069550588,          0,          0,
            0, 1067452414,          0,          0,          0, 1065352192,          0,          0,          0
        },
    },

};

#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */

#endif /* __IMX415_CMOS_EX_H_ */
